- Aktualisierung der Modelle in verschiedenen Bereichen, um die Feldnamen im snake_case-Format zu verwenden. - Hinzufügen der Option freezeTableName zu den Modellen, um die Tabellennamen in der Datenbank unverändert zu lassen. - Verbesserung der Konsistenz und Lesbarkeit des Codes durch einheitliche Namenskonventionen.
47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
// falukant/predefine/political_office_benefit.js
|
|
import { Model, DataTypes } from 'sequelize';
|
|
import { sequelize } from '../../../utils/sequelize.js';
|
|
import PoliticalOfficeBenefitType from '../type/political_office_benefit_type.js';
|
|
|
|
class PoliticalOfficeBenefit extends Model {}
|
|
|
|
PoliticalOfficeBenefit.init({
|
|
id: {
|
|
type: DataTypes.INTEGER,
|
|
primaryKey: true,
|
|
autoIncrement: true,
|
|
},
|
|
political_office_id: {
|
|
type: DataTypes.INTEGER,
|
|
allowNull: false,
|
|
},
|
|
benefit_type_id: {
|
|
type: DataTypes.INTEGER,
|
|
allowNull: false,
|
|
},
|
|
value: {
|
|
type: DataTypes.JSONB,
|
|
allowNull: false,
|
|
},
|
|
}, {
|
|
sequelize,
|
|
modelName: 'PoliticalOfficeBenefit',
|
|
tableName: 'political_office_benefit',
|
|
schema: 'falukant_predefine',
|
|
timestamps: false,
|
|
underscored: true,
|
|
,
|
|
freezeTableName: true});
|
|
|
|
// Association
|
|
PoliticalOfficeBenefit.belongsTo(PoliticalOfficeBenefitType, {
|
|
foreignKey: 'benefit_type_id',
|
|
as: 'benefitType'
|
|
});
|
|
PoliticalOfficeBenefitType.hasMany(PoliticalOfficeBenefit, {
|
|
foreignKey: 'benefit_type_id',
|
|
as: 'benefits'
|
|
});
|
|
|
|
export default PoliticalOfficeBenefit;
|