Sequelize – 连接表从未创build
我一直在试图构build一个简单的“消息”应用程序。在给MongoDB一个尝试之后,我发现它最好用MySQL。
所以我不想用手写所有的表格/查询等,我想学习从头开始build立一个ORM,Ak Sequelize。
比方说,我有一个用户表:
var User = sequelize.define('user', { email: { type: Sequelize.STRING, validate: { isEmail: true //msg: "Email is invalid" } } }
和一个消息表:
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();
我期望一个名为Conversations …的交接表…持有user_id ..并且每个消息都有一个对话Conversation_id的引用,但显然它不是真的…
有谁知道正确的方法是什么?
谢谢!
对于创buildConversations
表,你需要同步所有: sequelize.sync();
。