モデルファイルに定数変数を定義し、データをテーブルに挿入するときにこの定数変数にアクセスしようとすると、未定義と表示されます。私はsequlaize ORMとnodejsを使用しています。私はActive = 1、Inactive = 2、Deleted = 3のようなステータスの3つの値を定義したい、あるいはこれを定義する他の解決法がありますか? ORM 4以降のバージョンを使用しています。nodejsのコントローラで定数変数にアクセスする方法
Model code is here
var Sequalize = require('sequelize');
var sequalize = require('../../config/db_config');
const ACTIVE = '1';
const INACTIVE = '2';
const DELETED = '3';
const User = sequalize.define('user',{
user_id_pk : {
type : Sequelize.INTEGER,
allowNull : false,
primaryKey : true,
autoIncrement : true
},
user_type : Sequelize.INTEGER,
first_name : Sequelize.STRING,
middle_name : Sequelize.STRING,
last_name : Sequelize.STRING,
password : Sequelize.STRING,
email : Sequelize.STRING,
mobile_no : Sequelize.STRING,
is_email_verified : {
type:Sequalize.INTEGER,
defaultValue : 0
},
gender : Sequelize.STRING,
profile_image: Sequelize.STRING,
dob : Sequelize.DATE,
is_active : Sequelize.STRING,
created_date : Sequelize.DATE,
created_by : Sequelize.INTEGER,
updated_date : Sequelize.DATE,
updated_by : Sequelize.INTEGER,
},{
timestamps: false,
paranoid: true,
underscored: true,
freezeTableName: true,
tableName: 'user',
createdAt:'created_date',
updatedAt:'updated_date'
});
User.sync({force:false}).then(() => {
console.log('Table is created!');
}).catch(err => {
console.log('An error occur when table is created!');
});
module.exports = User;
Controller code is here
userController.saveUser = function(req,res){
console.log(user.ACTIVE);return false;
user.findOrCreate({
where:{
first_name: req.body.first_name,
email: req.body.email,
boltt_code: req.body.boltt_code
},
defaults:{
first_name: req.body.fihhrst_name,
middle_name : 'Rajeev',
last_name : 'Varshney',
email: req.body.email,
boltt_code: req.body.boltt_code,
is_active : '1',
}
})
.spread(function(user, created) {
var msg = '';
if(created){
msg = 'User inserted successfully!';
}else{
msg = 'User already exist!';
}
res.status(200).send({error : false,message : msg2, data : user });
})
.catch((err) => {
console.log('Oops something wrong! ' + err);
});
};
MySQLにはどのような質問がありますか? – axiac
私はそれを使用すると確信していますが、質問にMySQLに関連するものは何も表示されません。 MySQLタグを削除し、[tag:sequelize.js]タグを追加する必要があります。よく見ると、図書館の名前は「Sequelize」であり、間違って「Sequalize」ではありません。次に、コードがうまくいかない理由が不思議です... – axiac
私は、コードで意味します。 'Sequalize.INTEGER'でいっぱいです。 [Googleが知っている](https://www.google.ro/search?q=Sequalize.INTEGER)それは['Sequelize.INTEGER']でなければなりません(http://docs.sequelizejs.com) – axiac