SailsJS和mySQL自定义ID名称无法使用蓝色打印

时间:2014-01-02 00:49:02

标签: mysql node.js sails.js

我在SailsJS中创建了一个新模型,其中自定义ID名称作为主键。我想利用SailsJS附带的蓝色打印路线,但当我尝试转到/name/1时,我会收到以下错误。

ER_BAD_FIELD_ERROR: Unknown column 'id' in 'where clause'

似乎Sails仍然在寻找默认的表名'id'而不是我的新自定义ID。关于如何让Sails实现我的变化的任何想法?

谢谢

2 个答案:

答案 0 :(得分:10)

转到模型定义并最后添加autoPK:false。

module.exports = {

  schema:'true',
  attributes: {
    propertyName: { type:"string", required:true, unique: true }
  },
  autoPK:false
}

答案 1 :(得分:5)

好的,我查看了SailsJS src并在第37行的node_modules / sails / node_modules / waterline / lib / waterline / query / finders / basic.js中找到了检查属性'autoPK'的内容。默认情况下,此属性设置为true,并查找字段“id”。通过在我的模型中设置'autoPK:false',它将检查您是否设置了自定义主键并将使用它。全部固定。