Когда я запускаю любую функцию поиска с помощью sequelize, я ожидаю получить объект данных, которые пытаюсь получить, вместо этого я получаю кучу дополнительных данных обратно. Это то, что я получаю при печати результат того, что дал мне sequelize
Это код, который я запускаю:
getAllHubsByUser: function(userId, callback){
db.User.findByPk(userId)
.then(function(user) {
user.getSubscriptions()
.then(function(hubs){
dataValuesHubs = []
for (hub in hubs) {
dataValuesMembers.push(hub.dataValues)
}
callback(dataValuesHubs, null)
})
.catch(function(error){
callback(null, error)
})
})
.catch(function(error) {
callback(null, error)
})
},
У меня есть отношение многие ко многим между таблицей под названием Hubs и Users, многие пользователи могут быть подписался на множество хабов. Отношения выглядят так:
User.belongsToMany(Hub, {as: "Subscriptions", through: 'hubSubscriptions', foreignKey: 'userId'})
Hub.belongsToMany(User, {as: "Subscribers", through: 'hubSubscriptions', foreignKey: 'hubId'})
Поскольку sequelize не возвращает объект, я получаю сообщение об ошибке, когда вы запускаете user.getSubscription (): «Необработанное отклонение TypeError: Невозможно прочитать свойство 'findAll' из неопределенного "
Как я могу сделать так, чтобы sequelize отправлял обратно объект?