Sequelize - 结 table 从未创建
Sequelize - Junction table never created
我一直在尝试构建一个简单的 'messages' 应用程序。在尝试 MongoDB 之后,我发现 MySQL.[=14= 确实是最好的选择]
因此,我想学习使用 ORM a.k 从头开始构建它,而不是手动编写所有 tables / 查询等。续集。
假设我有一个用户 table:
var User = sequelize.define('user', {
email: {
type: Sequelize.STRING,
validate: {
isEmail: true
//msg: "Email is invalid"
}
}
}
还有一条消息table:
var Message = sequelize.define('message', {
message: {type: Sequelize.STRING},
sender: {type: Sequelize.STRING},
read: {type: Sequelize.BOOLEAN}
}
每个用户可以有多条消息,每条消息可以有 2 个用户在对话中。
所以当我这样做时:
User.hasMany(Message);
Message.belongsToMany(User, {through: 'Conversation', foreign_key: 'id'});
User.sync();
Message.sync();
我希望有一个 'junction table' 命名的对话...持有 user_id 的..并且每条消息都有对 Conversation_id 的引用,但显然它不是真的。 ..
有人知道正确的方法是什么吗?
谢谢!
要创建 Conversations
table,您需要同步全部:sequelize.sync();
.
我一直在尝试构建一个简单的 'messages' 应用程序。在尝试 MongoDB 之后,我发现 MySQL.[=14= 确实是最好的选择]
因此,我想学习使用 ORM a.k 从头开始构建它,而不是手动编写所有 tables / 查询等。续集。
假设我有一个用户 table:
var User = sequelize.define('user', {
email: {
type: Sequelize.STRING,
validate: {
isEmail: true
//msg: "Email is invalid"
}
}
}
还有一条消息table:
var Message = sequelize.define('message', {
message: {type: Sequelize.STRING},
sender: {type: Sequelize.STRING},
read: {type: Sequelize.BOOLEAN}
}
每个用户可以有多条消息,每条消息可以有 2 个用户在对话中。
所以当我这样做时:
User.hasMany(Message);
Message.belongsToMany(User, {through: 'Conversation', foreign_key: 'id'});
User.sync();
Message.sync();
我希望有一个 'junction table' 命名的对话...持有 user_id 的..并且每条消息都有对 Conversation_id 的引用,但显然它不是真的。 ..
有人知道正确的方法是什么吗?
谢谢!
要创建 Conversations
table,您需要同步全部:sequelize.sync();
.