“item_translation 与项目无关!”续集错误
Posted
技术标签:
【中文标题】“item_translation 与项目无关!”续集错误【英文标题】:"item_translation is not associated to item!" Sequelize error 【发布时间】:2018-11-06 20:05:27 【问题描述】:我正在对两个应该关联的表运行一个简单的查询,但我不断收到以下消息:
item_translation 未与项目关联!
基本上item_translation
应该属于item
。根据docs,我做的一切都是正确的。以下是模型:
ItemTranslation 模型:
module.exports = function ()
return function (app)
/** @type Sequelize.Sequelize */
const sequelize = app.get('sequelize')
const ItemTranslation = sequelize.define('item_translation',
_id:
type: Sequelize.INTEGER,
allowNull: false,
primaryKey: true,
autoIncrement: true
,
sourceId:
type: Sequelize.STRING,
allowNull: false,
references:
model: 'item',
key: '_id'
,
onDelete: 'cascade',
onUpdate: 'cascade'
,
text:
type: Sequelize.STRING,
allowNull: false
,
freezeTableName: true
)
ItemTranslation.associate = function ()
ItemTranslation.belongsTo(sequelize.models.item)
物品型号:
module.exports = function ()
return function (app)
/** @type Sequelize.Sequelize */
const sequelize = app.get('sequelize')
sequelize.define('item',
_id:
type: Sequelize.INTEGER,
allowNull: false,
primaryKey: true,
autoIncrement: true
,
text:
type: Sequelize.TEXT,
allowNull: true
,
freezeTableName: true
)
我错过了什么吗?
【问题讨论】:
【参考方案1】:我不确定,但试试这个。我总是明确定义外键。像这样的东西。
ItemTranslation.belongsTo(sequelize.models.item,foreignKey:'sourceId')
Item.associate = function ()
Item.hasMany(sequelize.models.ItemTranslation,foreignKey:'sourceId')
【讨论】:
恐怕还是不行。得到同样的错误和一切。我也尝试将targetId
添加到第二个参数对象,但仍然没有。
能否上传完整的错误信息截图。以上是关于“item_translation 与项目无关!”续集错误的主要内容,如果未能解决你的问题,请参考以下文章