Sequelize.js sequelize js:未正确创建数据库
因此,我刚刚使用sequelize.js为node创建了一个数据库,代码如下:Sequelize.js sequelize js:未正确创建数据库,sequelize.js,Sequelize.js,因此,我刚刚使用sequelize.js为node创建了一个数据库,代码如下: var sequelize = new Sequelize('database', 'sheta', 'mysqlroot', { host: 'localhost', port: 3000, timestamps: false }); var User = sequelize.define('User', { userID: Sequelize.INTEGER, userNa
var sequelize = new Sequelize('database', 'sheta', 'mysqlroot', {
host: 'localhost',
port: 3000,
timestamps: false
});
var User = sequelize.define('User', {
userID: Sequelize.INTEGER,
userName: Sequelize.TEXT,
password: Sequelize.TEXT
}, {
instanceMethods: {
getUserId: function() {
return this.userID;
}
}
});
var Post = sequelize.define('Post', {
userID: Sequelize.INTEGER,
postText: Sequelize.TEXT,
date: Sequelize.DATE,
postID: Sequelize.INTEGER
}, {
instanceMethods: {
getPost: function() {
return this.postText;
}
}
});
var Comment = sequelize.define('Comment', {
postID: Sequelize.INTEGER,
commentText: Sequelize.TEXT,
date: Sequelize.DATE,
commentID: Sequelize.INTEGER
} , {
instanceMethods: {
getComment: function() {
return this.commentText;
}
}
});
var Tag = sequelize.define('Tag', {
tagID: Sequelize.INTEGER,
tagText: Sequelize.TEXT,
postID: Sequelize.INTEGER
});
//Associations
Post.belongsTo(User);
Post.hasOne(User);
User.hasMany(Post);
Post.hasMany(Comment);
Comment.belongsTo(User);
Comment.hasOne(User);
User.hasMany(Comment);
Post.hasMany(Tag);
Tag.hasMany(Post);
sequelize.sync();
但当我尝试使用以下命令添加元组时:
User.create({ userID: 1, userName: 'sam', password: 'th'}).success(function(task) {
console.log("inserted");
// you can now access the newly created task via the variable task
});
“插入的”永远不会打印。
我做错什么了吗?我主要看了sequelize js上的代码。这里有什么我遗漏的吗?关于你的问题可能是什么的一些建议 您说过您使用sequelize创建了数据库-您必须已经创建了一个数据库,sequelize只创建表-只是检查;-)
请将
.error
或.done
函数附加到sequelize.sync
和用户。创建
调用并发布出现的错误如何将现有数据库导入sequelize.js?您不“导入”这样的数据库。您必须选择以下选项:您可以自己创建数据库并创建匹配的sequelize模型,而无需调用sync—或者您可以在sequelize中创建所有模型并调用.sync()
,这将为您创建数据库表。从您的代码来看,您似乎采取了更晚的方法—是否尝试附加错误回调?您必须确保创建了表。我建议您创建一个脚本来初始化数据库/表。不要在应用程序代码中混用它。