Ich habe Probleme beim Speichern von Daten in einer "Viele-zu-Viele" -Beziehung.Bookshelf.js - Wie man eine Viele-zu-Viele-Beziehung speichert?
Hier sind meine Modelle:
var CoursePeople = bookshelf.Model.extend({
tableName: 'course_people'
});
var Course = bookshelf.Model.extend({
tableName: 'course',
users: function(){
return this.belongsToMany(User);
}
});
var City = bookshelf.Model.extend({
tableName: 'city',
users: function(){
return this.hasMany(User);
}
});
var User = bookshelf.Model.extend({
tableName: 'people',
city: function(){
return this.belongsTo(City);
},
courses: function(){
return this.belongsToMany(Course);
}
});
Die Herausforderung besteht darin, wie IDs einzufügen, die ich in einem Array an die Verknüpfungstabelle erhalten in meiner Datenbank (mit dem Namen "course_people")?
Hier ist mein Code so weit:
app.post('/users/', function(req, res) {
console.log(req.body);
var courses_ids = req.body.courses_ids; //array of ids
delete req.body.courses_ids;
new User(req.body).save().then(function(user){
console.log(user.id);
//How to store the ids in the junction table?
}).catch(function(error){
console.log(error);
});
});
Danke nochmals für Ihre Zeit und Anregungen!
ich dies versucht und es hat nicht funktioniert Nehmen wir an, mein Array von Werten sieht aus wie [1,2,3,4,5] es versucht, die Spalten wie folgt einzufügen: 'Einfügen in' users_courses' ('course_id',' user_id') Werte ('[1,2 , 3,4,5] ',' 1 ') ' –