У меня есть метод экземпляра sequelize, который выполняет DB запрос:Асинхронный таблица запроса в методе sequelize геттерного
getPropertyDays() {
const queryString = `
SELECT
state
FROM property_days
WHERE
DATE(day) = CURDATE() AND
property_id = :propertyId;`;
const replacements = {propertyId: this.id};
return this.sequelize.query(queryString, {replacements: replacements, type: sequelize.QueryTypes.SELECT});
},
, который вызывается с помощью геттера:
getterMethods: {
propertyState() {
var self = this;
const blockedDay = 'x';
const unavailableDay = 'u';
this.getPropertyDays().then(function(result) {
var state = result[0]['state'];
if (self.prospect || state == unavailableDay) {
return 'unavailable';
}
if (state == blockedDay) {
return 'occupied';
}
else {
return 'available';
}
});
}
},
Проблема заключается в том, что результат, который возвращается с геттера, не определено, потому что он не может решить обещание перед возвратом.
Поскольку у меня нет модели для таблицы, как я могу решить эту проблему? Об этом уже целый день!
Большое спасибо.
Не совсем из-за моих экспериментов. Например, модель toJSON моделирует свойства обещания по сравнению с разрешенным значением обещания, что не так уж полезно. – Kyle