Sequelize 的模型定义中如何设置默认值?

阅读时长 4 分钟读完

Sequelize 是一种 Node.js 上的 ORM(对象关系映射)框架,它允许你在应用程序中定义模型(数据结构),并将它们映射到数据库表中。Sequelize 的模型定义中可以设置默认值,这可以帮助我们在创建新记录时自动填充一些字段。

设置默认值的方式

设置默认值有多种方式,我们可以在模型定义时为字段指定一个默认值,也可以使用 Sequelize 提供的内置函数来实现自定义的默认值。

直接指定默认值

我们可以使用 defaultValue 选项来指定一个默认值,如下所示:

-- -------------------- ---- -------
----- ---- - ------------------------ -
  ---------- -
    ----- -----------------
    ---------- ------
    ------------- ------
  --
  --------- -
    ----- -----------------
    ---------- ------
    ------------- -----
  -
---

在上面的示例中,当我们创建一个新的 User 记录时,如果没有指定 firstName 或 lastName 字段的值,它们将自动被设置为 "John" 和 "Doe"。

使用函数设置默认值

如果我们想要一个更加灵活的默认值,我们可以写一个函数来实现它。在模型定义中,我们可以通过设置 defaultValue 为一个函数来达到这个目的。如下所示:

-- -------------------- ---- -------
----- ---- - ------------------------ -
  ---- -
    ----- ------------------
    ---------- ------
    ------------- ---------- -
      ------ ------------------------ - -----
    -
  -
---

在上面的示例中,我们定义了一个名为 age 的字段,并指定了一个默认值函数。每次创建新的 User 记录时,age 字段的默认值将被设置为随机生成的一个 0-100 的整数。

总结

在 Sequelize 的模型定义中,我们可以使用 defaultValue 选项和函数来设置默认值。这使得我们在创建新数据时更加容易,并且可以减少我们的重复代码。在实际使用中,我们可以根据具体的业务需求来选择自己需要的默认值方式。

示例代码

-- -------------------- ---- -------
----- - ---------- --------- - - ---------------------

----- --------- - --- -----------
  -------- ---------
  -------- -------------------
---

----- ---- - ------------------------ -
  ---------- -
    ----- -----------------
    ---------- ------
    ------------- ------
  --
  --------- -
    ----- -----------------
    ---------- ------
    ------------- -----
  --
  ---- -
    ----- ------------------
    ---------- ------
    ------------- ---------- -
      ------ ------------------------ - -----
    -
  -
---

------ -- -- -
  ----- ---------------- ------ ---- ---
  ----- ------------- ---------- -------- ---- -- ---
  ----- ----- - ----- ---------------
  -------------------
-----

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/651cc32a95b1f8cacd4421f1

纠错
反馈