65 lines
1.2 KiB
JavaScript
65 lines
1.2 KiB
JavaScript
const { DataTypes, Model } = require('sequelize');
|
|
const sequelize = require('../../config/sequelize.conf');
|
|
const Seccion = require('./Seccion');
|
|
const TipoPregunta = require('./TipoPregunta');
|
|
|
|
class Pregunta extends Model {}
|
|
Pregunta.init(
|
|
{
|
|
idPregunta: {
|
|
type: DataTypes.INTEGER,
|
|
primaryKey: true,
|
|
allowNull: false,
|
|
unique: true,
|
|
autoIncrement: true,
|
|
},
|
|
otra: {
|
|
type: DataTypes.BOOLEAN,
|
|
allowNull: true,
|
|
defaultValue: false,
|
|
},
|
|
obligatoria: {
|
|
type: DataTypes.BOOLEAN,
|
|
allowNull: true,
|
|
defaultValue: false,
|
|
},
|
|
pregunta: {
|
|
type: DataTypes.STRING(256),
|
|
allowNull: false,
|
|
},
|
|
},
|
|
{
|
|
sequelize,
|
|
modelName: 'Pregunta',
|
|
tableName: 'pregunta',
|
|
timestamps: false,
|
|
}
|
|
);
|
|
|
|
Pregunta.belongsTo(Seccion, {
|
|
foreignKey: {
|
|
name: 'idSeccion',
|
|
type: DataTypes.INTEGER,
|
|
allowNull: false,
|
|
},
|
|
});
|
|
|
|
Pregunta.belongsTo(TipoPregunta, {
|
|
foreignKey: {
|
|
name: 'idTipoPregunta',
|
|
type: DataTypes.INTEGER,
|
|
allowNull: false,
|
|
},
|
|
});
|
|
|
|
Pregunta.belongsTo(Pregunta, {
|
|
foreignKey: {
|
|
name: 'idPreguntaDepende',
|
|
type: DataTypes.INTEGER,
|
|
allowNull: true,
|
|
defaultValue: null
|
|
},
|
|
});
|
|
|
|
module.exports = Pregunta;
|