编辑页面

.create()

在数据库中创建一个记录。

await Something.create(initialValues);

用法

#
参数 类型 详情
1 initialValues Dictionary 新记录的初始值。(注意,如果此模型处于 "模式化" 模式,则任何多余的键将被静默省略。)

注意:出于性能原因,从 Sails v1.0 / Waterline 0.13 开始,传递到此模型方法的 initialValues 字典将在大多数情况下被就地修改(而在 Sails/Waterline v0.12 中,情况并非如此)。

结果
#
类型 描述
Dictionary? 为了提高性能,默认情况下不会将创建的记录作为结果提供。但如果你链接了 .fetch(),那么新创建的记录将被发送回来。(请注意,这在某些适配器中需要额外的数据库查询。)
错误
#
名称 类型 何时?
UsageError Error 如果传递了无效的内容,则会抛出。
AdapterError Error 如果数据库适配器中出现错误,则会抛出。有关如何协商唯一性错误(例如,尝试创建具有重复项的记录,这将违反唯一性约束)的示例,请参见 概念 > 模型和 ORM > 错误
Error Error 如果发生任何其他意外情况,则会抛出。

有关在 Sails 和 Waterline 中协商错误的示例,请参见 概念 > 模型和 ORM > 错误

元键
#
类型 详情
fetch Boolean 如果设置为 true,则会将创建的记录发送回来。

默认为 false

有关元键的更多信息,请参见 .meta()

示例

#

在数据库中创建一个名为 Finn 的用户

await User.create({name:'Finn'});

return res.ok();
获取新创建的记录
#
var createdUser = await User.create({name:'Finn'}).fetch();

sails.log('Finn\'s id is:', createdUser.id);

协商错误

#

始终处理模型方法的错误非常重要。但有时,你需要以更细粒度的方式查看错误。要了解有关 Waterline 返回的错误类型的更多信息,以及有关如何处理它们的示例,请参见 概念 > 模型和 ORM > 错误

笔记

#

有遗漏吗?

如果你发现我们遗漏了什么或可以改进的地方,请按照 此链接 提交到 sails 仓库的 pull 请求。一旦我们合并它,更改将在网站下次部署时反映出来。

参考

参考