var Sequelize = require('sequelize');
var sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: 'sqlite',
// SQLite only
storage: 'db.sqlite'
});
var Driver = sequelize.define('driver', {
auth: Sequelize.STRING,
name: Sequelize.STRING,
phone: Sequelize.INTEGER,
bank: Sequelize.INTEGER,
idNo: Sequelize.STRING
});
var Hail = sequelize.define('hail', {
lat: Sequelize.INTEGER,
lon: Sequelize.INTEGER,
})
Hail.belongsTo(Driver);
sequelize.sync().then(function() {
return Hail.create({
lat: 123,
lon: 1234
});
}).then(function(driver) {
console.log(driver.get({
plain: true
}));
});我试着用“属于”的方法把冰雹和司机联系起来。它似乎什么也没做。日志不输出任何belongsTo字段,hail在数据库中也没有driverID列。我没有任何错误。
发布于 2016-06-19 17:59:30
我怀疑您在添加belongsTo调用之前对数据库进行了同步。默认情况下,“同步”操作不会重新创建表或修改现有表。您需要以“强制”的方式同步一次:
sequelize.sync({force: true}).then(function() {
// ...
});请注意,这将破坏表中的所有现有记录。
或者,查看设置迁徙。
https://stackoverflow.com/questions/37910138
复制相似问题