我試圖通過列名SequelizeSequelize順序按列名
這裏訂購是我的模型
var Milestones = sequelize.define('milestones', {
milestoneId: Sequelize.INTEGER,
data: Sequelize.JSON,
repository: Sequelize.STRING
});
數據庫是PostegreSql 9.5
var dialect = 'postgres',
protocol = 'postgres';
var sequelize = new Sequelize(dbConfig.database, dbConfig.user, dbConfig.password, {
host: dbConfig.host,
dialect: dialect,
protocol: protocol,
dialectOptions: {
timeout: 30
},
pool: {
max: 5,
min: 0,
idle: 30000,
maxConnections: 5,
maxIdleTime: 30
},
logging: false
});
這裏是我的查詢
models.Milestones.findAll({
where: {
repository: req.body.repository
},
order: 'milestoneId'
}).then(function (values) {
// do something
});
這是我的錯誤
Unhandled rejection SequelizeDatabaseError: column "milestoneid" does not exist
所以問題是,我通過milestoneId
想秩序,但Sequelize實際上是試圖通過milestoneid
訂購(注意缺乏駱駝情況下)。
如果我更改爲訂購repository
一切正常,所以此問題似乎與Sequelize轉換爲小寫字母有關。
除了將數據庫中的列重命名爲小寫以外的任何建議?
謝謝
這應該是工作,也應該是'milestoneId',而不是'milestonesId' – tyler
字段實際上沒有發揮作用,但改變順序做了訣竅 –