【发布时间】:2014-12-19 04:41:17
【问题描述】:
我有两个模型,定义为 Person 和 Car:
module.exports = function(sequelize, DataTypes) {
var Person;
Person = sequelize.define('Person', {
name: {
type: DataTypes.STRING,
allowNull: false
},
profession: {
type: DataTypes.STRING,
allowNull: false
}
}, {
classMethods: {
associate: function(models) {
return Person.hasMany(models.Car, {
foreignKey: 'PersonId'
});
}
}
});
return Person;
};
和
module.exports = function(sequelize, DataTypes) {
var Car;
Car = sequelize.define('Car', {
vin: {
type: DataTypes.STRING,
allowNull: false
},
color: {
type: DataTypes.STRING,
allowNull: false
}
}, {
classMethods: {
associate: function(models) {
return Car.hasMany(models.Person, {
foreignKey: 'CarId'
});
}
}
});
return Car;
};
这符合预期并创建了三个表:Persons、Cars 和 CarsPersons。
我已经在表中添加了几个Cars,现在我想在Persons 表中添加一个Person。比方说,我有 15 个 CarId。所以在添加Person 时,我会这样做:
DB.Person.create({name: 'My Name', profession: 'Lawyer'}).complete(function(err)....
如何在 CarsPersons 表中创建一个关联,以使 CarId 为 15,PersonId 无论此新 ID 是什么?
【问题讨论】:
标签: mysql node.js sequelize.js