-
Notifications
You must be signed in to change notification settings - Fork 369
Closed
Description
Hi,
as the title is relevant enough, this is how I produced the bug:
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 Fundation.find({ name: 'thisIsATest' }).remove(function(err) {
console.log(err);
done();
}); // testWill produce with the debug flag:
(orm/mysql) SELECT * FROM
t_fundation_funWHEREname= '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:
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_removedFROMt_fundation_fun>WHERE >fun_name= 'thisIsATest'
But not for the delete ! (it should be fun_id, not id)
(orm/mysql) DELETE FROM
t_fundation_funWHEREid= 3
It seems like chaining find doesn't work weel with mapsTo, as well for using the delete method
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels