Hi, as the title is relevant enough, this is how I produced the bug: ``` javascript var Fundation = db.define('fundation', { id: { mapsTo: 'fun_id', type: 'serial', key: true }, name: { mapsTo: 'fun_name', type: 'text', size: 40 }, removed: { mapsTo: 'fun_removed', type: 'boolean', defaultValue: false } }, { collection: 't_fundation_fun', validations: { name: [ orm.enforce.unique('Name already taken.'), orm.enforce.notEmptyString('Fundation must have name.') ], } } ); // model Fundation ``` ``` javascript Fundation.find({ name: 'thisIsATest' }).remove(function(err) { console.log(err); done(); }); // test ``` Will produce with the debug flag: > (orm/mysql) SELECT \* FROM `t_fundation_fun` WHERE `name` = 'thisIsATest' > { [Error: ER_BAD_FIELD_ERROR: Unknown column 'name' in 'where clause'] > code: 'ER_BAD_FIELD_ERROR', > errno: 1054, > sqlState: '42S22', > index: 0 } However, if I change the test code to: ``` javascript Fundation.one({ name: 'thisIsATest' }, function(err, testFundation) { testFundation.remove(function(err) { console.log(err); assert.equal(err, null); }); }); ``` Will produce the correct SQL for the find: > (orm/mysql) SELECT `fun_id`, `fun_name`, `fun_removed` FROM `t_fundation_fun` >WHERE >`fun_name` = 'thisIsATest' But not for the delete ! (it should be fun_id, not id) > (orm/mysql) DELETE FROM `t_fundation_fun` WHERE `id` = 3 It seems like chaining find doesn't work weel with mapsTo, as well for using the delete method
Activity
dxg commentedon Aug 21, 2014
Fixed & published in ORM 2.1.19