Я работаю с Nodejs, Sequelize. Это следующая структура моей пользовательской модели:Изменить имя столбца по умолчанию sequelize
"use strict";
module.exports = function(sequelize, DataTypes) {
var User = sequelize.define('user', {
first_name: {
type: DataTypes.STRING,
allowNull: false,
},
last_name: {
type: DataTypes.STRING,
allowNull: false,
},
email: {
type: DataTypes.STRING,
allowNull: false,
unique: true,
validate: {
isUnique: function (email, done) {
User.find({ where: { email: email }})
.done(function (err, user) {
if (err) {
done(err);
}
if (user) {
done(new Error('Email already registered'));
}
done();
});
}
}
},
profile_image_path: {
type: DataTypes.STRING,
allowNull: true,
},
active_flag: {
type: DataTypes.BOOLEAN,
allowNull: true,
defaultValue: true
},
delete_flag: {
type: DataTypes.BOOLEAN,
allowNull: true,
defaultValue: false
}
}, {
classMethods: {
associate: function(models) {
User.hasMany(models.account),
User.hasMany(models.user_has_contact)
}
}
});
return User;
};
По умолчанию создаются 3 колонки:
- ID
- createdAt
- updatedAt
Я не хочу createdAt
& updatedAt
в этом формате, я хочу created_at
и updated_at
. Как изменить это имя столбца по умолчанию ???
У меня есть еще один стол user_has_contact
со следующим соотношением:
{
classMethods: {
associate: function(models) {
UserHasContact.belongsTo(models.user)
}
}
}
Его автоматического создания userId
поля, но снова я хочу его как user_id
. Любое предложение будет оценено!
Если я буду использовать 'ForeignKey:«user_id «Мне также нужно создать столбец user_id». – Manwal
Нет, если вы позволите sequelize создать таблицы ('sequelize.sync') –