sequelize js:数据库未正确创建

时间:2013-03-12 00:33:14

标签: sequelize.js

所以我刚刚使用sequelize.js为节点创建了一个数据库并拥有以下代码:

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上的代码。这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:3)

关于您的问题可能是一些建议。

你说你使用sequelize创建了你的数据库 - 你必须已经创建了一个数据库,sequelize只创建了表 - 只是检查; - )

是否可以在.error.done来电附加sequelize.syncUser.create功能并发布出现的错误