So habe ich zwei Modelle, Benutzer und Chat. Jeder Benutzer kann mehrere Chats haben und jeder Chat kann mehrere Benutzer haben. Also habe ich ein neues Modell namens UserChat -Sequelize Node.js neue Funktionen funktionieren nicht nach dem Erstellen einer viele zu viele Beziehung
var db = require('../db');
var Chat = require('../models/chats');
var User = require('../models/users');
var UserChat = db.connection.define("user_chat", {
id: {
type: db.Sequelize.INTEGER,
primaryKey: true,
autoIncrement: true
}
})
Chat.ChatModel.belongsToMany(User.UserModel, {through: {model: 'user_chat'}});
User.UserModel.belongsToMany(Chat.ChatModel, {through: {model: 'user_chat'}});
Dieses eine Tabelle in der Datenbank erstellt genannt user_chats und nach sequelize der Dokumentation, sollte ich in der Lage sein addUser auf meinem Chat-Modell und addChat auf meinem User-Modell zu verwenden,
Aber wenn ich versuche Chat.ChatModel.addUser (Benutzer) zu verwenden, erhalte ich die Fehlermeldung „addUser ist keine Funktion“
Dies ist, wie ich das Chat-Modell und User-Modell erklären -
var db = require('../db')
var Chat = db.connection.define("chat", {
chatname: {
type: db.Sequelize.STRING,
unique: true,
allowNull: false
},
creator:{
type: db.Sequelize.INTEGER,
unique: false,
allowNull: false
}
});
module.exports.ChatModel = Chat;
mein User-Modell
und dann (vereinfacht) -
var db = require('../db')
var User = db.connection.define("user", {
username: {
type: db.Sequelize.STRING,
unique: true,
allowNull: false
},
password: {
type: db.Sequelize.STRING,
unique: false,
allowNull: false
},
});
module.exports.UserModel = User;
Nun, wenn ich die addUser Funktion oder eine neue Funktion zu verwenden versuchen sollte ich nach dem documentation gegeben werden ich den Fehler, dass die Funktion nicht noch tut existieren.