Files
miriamgemeinde/models/MenuItem.js
Torsten Schulz 4f1390b794 Multiple changes
2024-06-16 23:03:44 +02:00

55 lines
1.1 KiB
JavaScript

// models/MenuItem.js
const { DataTypes } = require('sequelize');
module.exports = (sequelize) => {
const MenuItem = sequelize.define('MenuItem', {
name: {
type: DataTypes.STRING,
allowNull: false
},
link: {
type: DataTypes.STRING,
allowNull: false
},
component: {
type: DataTypes.STRING,
allowNull: false
},
show_in_menu: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
requires_auth: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
parent_id: {
type: DataTypes.INTEGER,
allowNull: true
},
order_id: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0
},
page_title: { // Neuer Eintrag
type: DataTypes.STRING,
allowNull: true
}
}, {
tableName: 'menu_items',
timestamps: false
});
MenuItem.associate = function(models) {
MenuItem.hasMany(models.MenuItem, {
foreignKey: 'parent_id',
as: 'submenu'
});
};
return MenuItem;
};