Удалить столбец по умолчанию по умолчанию

66
8

Я изучаю Sequelize и не понимаю ни минуты. По умолчанию внешний ключ для отношения sortTo будет сгенерирован из имени целевой модели и имени целевого первичного ключа. Внешний ключ по умолчанию может быть перезаписан параметром foreignKey.

У меня есть 2 таблицы (сотрудник, отдел) с такими ассоциациями:

db.employee.belongsTo(db.department, {foreignKey: 'emp_depID'});
db.department.hasMany(db.employee);

Я объявил foreignKey как "emp_depID" в таблице employee, который ссылается на идентификатор отдела, но в моей таблице у меня также есть столбец default - department.id с нулевым значением. Как удалить этот столбец по умолчанию? Мне это не нужно.

спросил(а) 2018-03-24T00:42:00+03:00 1 год, 8 месяцев назад
1
Решение
78

module.exports = function(connection, Sequelize){
var Department = connection.define('Department', {
name : Sequelize.STRING(50)
});
Department.removeAttribute('id');

return Department;
};

перед возвратом модели используйте метод removeAttribute для удаления любого атрибута

ответил(а) 2018-03-30T04:48:00+03:00 1 год, 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема