UNPKG

node-tenancy

Version:

Making multi-tenancy easier with Node.js & typescript

63 lines (59 loc) 1.17 kB
'use strict'; const { Model, DataTypes, } = require('sequelize'); /** * * @param {Sequelize} sequelize * @returns {Domain} */ module.exports = (sequelize) => { class Domain extends Model { /** * Helper method for defining associations. * This method is not a part of the Sequelize lifecycle. * This method is called after defining all app models */ static associate(models) { // define association here Domain.belongsTo(models.Tenant, { foreignKey: { name: 'tenant_id', type: DataTypes.UUID, }, }); } } Domain.init({ id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true, }, domain: { type: DataTypes.STRING, allowNull: false, }, tenant_id: { type: DataTypes.UUID, references: { model: 'Tenant', key: 'id', }, allowNull: false, }, created_at: { type: DataTypes.DATE, }, updated_at: { type: DataTypes.DATE, }, }, { sequelize, modelName: 'Domain', tableName: 'domains', timestamps: false, }); return Domain; };