Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const fs = require("fs");
- const path = require("path");
- const Sequelize = require("sequelize");
- let sqize = new Sequelize({
- host : "1.2.3.4",
- port : 1234,
- database : "testDb",
- username : "pino",
- password : "th1S1s@c0mpL3xP4sSw0rD",
- dialect: 'mysql',
- });
- fs.readdirSync(__dirname).filter(function(file) {
- return (file.indexOf(".") !== 0) && (file !== "index.js");
- }).forEach(function(file) {
- let model = sequelize.import(path.join(__dirname, file));
- db[model.name] = model;
- });
- Object.keys(db).forEach(function(modelName) {
- if ("associate" in db[modelName]) {
- db[modelName].associate(db);
- }
- });
- db.sequelize = sequelize;
- db.Sequelize = Sequelize;
- db.op = Sequelize.Op;
- module.exports = {
- sqize: sqize,
- Sequelize: Sequelize,
- op: Sequelize.Op
- };
- module.exports = function (sequelize, DataTypes) {
- let users = sequelize.define('users', {
- username: {
- type: DataTypes.STRING(255),
- allowNull: true
- },
- firstname: {
- type: DataTypes.STRING(255),
- allowNull: true
- },
- secondname: {
- type: DataTypes.STRING(255),
- allowNull: true
- },
- email: {
- type: DataTypes.STRING(255),
- allowNull: true
- },
- type: {
- type: DataTypes.INTEGER(4),
- allowNull: true,
- references: {
- model: 'users_type',
- key: 'id'
- }
- },
- password: {
- type: DataTypes.STRING(255),
- allowNull: true
- },
- salt: {
- type: DataTypes.STRING(255),
- allowNull: true
- }
- }, {
- tableName: 'users'
- });
- users.associate = function (models) {
- users.belongsTo(models.user_types, {
- foreignKey: "type",
- as: "userType"
- });
- users.hasMany(models.user_logs, {
- foreignKey: "user_id",
- as: "userLogs"
- });
- };
- return users;
- };
Add Comment
Please, Sign In to add comment