Этот проект использует sqlite и sequelize. Я привык к нормальному sql, но этот метод выглядит полезным для создания API в Node.js.Переименованные ассоциации внешних ключей в sequelize
У меня есть две модели: пользователь и группа. В группе много пользователей, но один из них - учитель. У меня есть отдельная таблица UserInGroup для обработки множества-ко-многим, но для отношения «один-ко-многим» учителя я переименовал отношение «учитель» (и поэтому атрибут - teacherId).
db.group.belongsTo(db.user, {as: 'teacher'});
db.user.hasMany(db.group, {as: 'teacher'});
Когда я войти и попытаться создать объект групповой, он пытается сделать поле USERID, которое, очевидно, не существует. Как я могу заставить его поместить userId в поле teacherId?
app.post('/groups', middleware.requireAuthentication, function(request, response){
var body = _.pick(request.body, 'name', 'description');
body.description = body.description.trim();
body.name = body.name.trim();
db.group.create(body).then(function(group){
request.user.addGroup(group).then(function(){
return group.reload();
}).then(function(group){
response.json(group.toJSON())
})
}, function (e) {
response.status(400).json(e);
})
});
Я не хочу просто переименовать поле, потому что я также будет управление «сообщение» объект, который нужно взять два UserIds для отправителя и получателя. Я определил все поля в db.js, но я не уверен, как их заполнять.