续集创建与updatedAt和createdAt类似的列,但随后创建createdBy和updatedBy

时间:2018-10-28 17:43:33

标签: sequelize.js

我想了解一下以下内容。我想在我的所有表上都有2列,分别具有function composerRequire69685de7f834ebe45f1e02416f8679f0($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; } } created_by。在Java Spring Boot中,您可以创建一个last_modified_by,然后通过继承扩展该实体以创建您的实际模型。

sequelize是否有可能实现类似效果?还是有另一种DRY方法?这意味着我定义了一个基础模型,然后从它继承。

示例(带有JS语法的伪代码):

AbstractAuditingEntity

我当前的解决方案是执行以下操作,并使用传播算子将其添加到每个单独的模型中。

const options = {}; //put whatever options you need

const columnsOnAllTables = db.define({
  created_by: {
    type: Sequelize.STRING,
    defaultValue: 'melvinroest@yay.com',
  }
  last_modified_by: {
    type: Sequelize.STRING,
    defaultValue: 'melvinroest@yay.com',
  }
}, options)

const User = db.extends(columnsOnAllTables).define('user', {
  login: {
    type: Sequelize.STRING,
    allowNull: false,
  },
  password_hash: {
    type: Sequelize.STRING,
    allowNull: false,
  },
}, options);

0 个答案:

没有答案