Я использую перо js v2.0.3 с продолжением v3.29.0, и я только что создал три модели, третья из которых связана с двумя другими.
Я использовал перья-cli для создания сервисов для каждого из них, а затем редактировал файл модели каждого из них.
Пока все хорошо, таблицы созданы (с использованием PostgreSQL), созданы индексы, перья js хорошо заботятся о CRUD, но пока не о внешних ключах.
Итак, когда я пытаюсь рассказать перьям об отношениях между моделями, у меня возникают проблемы.
Когда я добавляю role_permission.belongsTo(permissions)
к модели role_permission
, я получаю эту ошибку: ReferenceError: permissions is not defined
Как я видел в документации Sequelize, модели определены в одном и том же «документе», поэтому я подозреваю, что проблема где-то там, но я не понимаю, что нужно делать.
Наконец, вот соответствующие части определений моделей permission
и role_permission
:
// permission-model.js - A sequelize model
module.exports = function(sequelize) {
const permission = sequelize.define('permissions', {
permission_id: {
type: Sequelize.UUID,
defaultValue: Sequelize.UUIDV1,
primaryKey: true,
allowNull: false
}...
}, ...);
permission.sync();
return permission;
};
// role_permission-model.js - A sequelize model
module.exports = function(sequelize) {
const role_permission = sequelize.define('role_permissions', {
permission_id: {
type: Sequelize.UUID,
allowNull: false
}...
}, ...);
role_permission.belongsTo(permissions) //<-- undefined?
role_permission.sync();
return role_permission;
};
Есть ли у вас какие-либо указатели, которые помогут мне решить эту проблему? Спасибо!