为什么在我的某些模型中序列化不会为 Foreignkey 创建新列?但是它确实为其他模型创建了???
令人沮丧和奇怪。例如,在此用户模型中,不会创建sequelize role_id
。
'use strict';
module.exports = (sequelize, DataTypes) => {
const User = sequelize.define('User', {
id: { type: DataTypes.BIGINT, allowNull: false, autoIncrement: true, unique: true, primaryKey: true },
first_name: DataTypes.STRING,
last_name: DataTypes.STRING
}, {});
User.associate = function(models) {
User.belongsTo(models.Role, { foreignKey: 'role_id' });
};
return User;
};
这是一个类似的问题:不会创建模型关联列但不能创建!没有回答。
我已经花了几个小时,我做了所有类似的事情:
NewUser
。有用!但同样没有User
名字。在提出Stackoverflow问题之后,我将在其Github的问题页面上寻求帮助。
我在想我可以只定义列role_id
而不是通过associate
函数添加它。
感谢Anatoly这样处理有关Sequelize的问题。
经过如此多的尝试和错误,我发现问题是由我的路线注册引起的,例如:
require("./app/routes/user/user.routes")(app)
在我的 app.js 或 server.js中 。这些路由注册是在 db.sync
!之前添加的。
所以我所做的是,在那之后我将这些路由称为 db.sync
,就像这样:
const db = require("./app/models")
if (process.env.NODE_ENV === "production") {
db.sequelize.sync().then(() => {
useRoutes()
})
} else {
db.sequelize.sync({ force: true }).then(() => {
console.log("Drop and re-sync db.")
useRoutes()
})
}
function useRoutes() {
console.log("Use routes...")
require("./app/routes/user/user.routes")(app)
require("./app/routes/auth/auth.routes")(app)
}
瞧,固定!
问题内容: 是否可以一次更新父模型和关联模型的属性?我无法使其正常工作,并且无法找到任何完整的示例。我不确定我的代码是否有问题或是否没有按照我期望的方式工作。我尝试将onUpdate:’cascade’添加到我的hasMany定义中,但这似乎无济于事。 楷模: 检索过滤器并尝试更新关联的FilteredContent对象上的属性: 这导致仅Filter对象中的属性被更新。如何获取它还更新Filte
问题内容: 使用内联formset docs中的示例,我能够(使用modelforms)编辑属于特定模型的对象。我一直在尝试使用相同的模式来 使用内联表单集创建新对象,但是一直无法清除我的头来为此目的提供工作视图。 使用与上述链接相同的示例,我将如何创建“作者”模型的新实例及其相关的“书”对象? 问题答案: 首先,创建一个Author模型表单。 然后创建一个虚拟作者对象: 然后使用伪作者创建内联表
我希望hibernate创建三个表,但在我的情况下,只创建了一个表角色,我得到了如下错误 原因:org.hibernate.tool.schema.spi.schemaManagementException:无法对JDBC目标执行模式管理[创建表user_role(user_role_id numeric(19,0)标识not null,role_id numeric(19,0),user_id
我有一个电影模特,有以下联想(属于电影类型): 演员 国家 类型。。。 当一个表单被张贴时,我有这个数据(这里跳过了很多细节): '演员'= 我希望我的update()/store()控制器函数能够轻松关联这些模型。 名为“卡里·格兰特”的演员可能存在,也可能不存在,也可能与我正在编辑的电影有关联。我还可以把他从这部电影中删除,所以我需要删除关联。体裁和其他一切都一样。 所以我想我应该做一个基本模
通过预先确定好模型之间的关系,在业务开发中,使用非常简便的写法,就可以实现复杂的涉及多表数据增删改查。 这一切都是模型底层实现帮你在处理,在 imi 中,模型的关联关系都使用注解来定义。 注解 这里列出定义模型关联关系所需的注解,所有关联模型的注解,命名空间为Imi\Model\Annotation\Relation @OneToOne 一对一关系声明 用法: @OneToOne("模型类名")
如果我只传递一个字符串,而不是的列表: 我得到的是: