Ich habe zwei bekam belongsToMany Modelle:Sequelize: Finden Datensätze basierend auf assoziierten BelongsToMany Record-- aber immer noch alle zugehörigen Datensätze?
const apptsModel = db.define('Appts', {
id: {type: Sequelize.INTEGER, primaryKey: true, autoIncrement: true},
[.....]
});
const UserDataModel = db.define('UserData', {
id: {type: Sequelize.STRING, primaryKey: true},
gender: {type: Sequelize.STRING},
name_title: {type: Sequelize.STRING},
name_first: {type: Sequelize.STRING},
name_last: {type: Sequelize.STRING},
[.....]
});
apptsModel.belongsToMany(UserDataModel, {through: 'ApptsToUsers'});
UserDataModel.belongsToMany(apptsModel, {through: 'ApptsToUsers'});
Ich möchte eine Suche tun, dass:
1) alle Termine findet, für die mindestens einer der zugehörigen Benutzer einen bestimmten Benutzer-ID hat.
2) Gibt alle zugeordneten Benutzer für diesen Termin zurück.
Ich habe Arbeits sequelize Code, der tut (1):
var ret = connectors.Appts.findAll({
include: [connectors.UserData],
where: {'$UserData.id$': args.originatingUserID}
}).then((res) => res.map((item) => item.dataValues));
... aber es gibt nur die zugehörigen Benutzerdaten für den einen bestimmten Benutzer. Wie gebe ich die Daten für alle verknüpften Benutzer für jeden Termin zurück?
Ich würde auch gerne wissen, ob es eine einfachere Möglichkeit gibt, dies in einer einzigen Abfrage anstelle von mehreren Abfragen zu tun. –