ruby-on-rails - .build、.create 和 .create 之间的区别!以及什么时候应该使用它们?

标签 ruby-on-rails

所以我最近看到人们越来越多地在 Controller 中使用 .build.create.create!。与仅使用 .new 并传递参数对象然后传递 .save 有什么区别?有优点和缺点吗?使用这些其他方法有好处吗?

最佳答案

有一些差异,但差异不大:

  1. .create 相当于 .new 后跟 .save。只是更简洁而已。
  2. .create! 相当于 .new 后跟 .save! (如果保存失败则抛出错误)。它也只是短了一点
  3. 我认为 .build 主要.new 的别名。它works one way in Rails 3以及 Rails <3.x
  4. 中的另一种方式

然而,最重要的部分是可以通过关联(has_many等)调用这些方法来自动链接两个模型。

关于ruby-on-rails - .build、.create 和 .create 之间的区别!以及什么时候应该使用它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/403671/

相关文章:

css - 如何在一个 SCSS 中获取 mixin,以便在 Rails 元素的所有 SCSS 文件中得到识别?

javascript - 从 Rails Controller 中的 Javascript 对象获取值

mysql - 如何使用 Ruby on Rails 从 MySQL 关系数据库表中获取多个值?

ruby-on-rails - 如何保护 Rails 模型属性?

ruby-on-rails - Rails : Calling . limit(5) 更改结果顺序

ruby-on-rails - Ruby - 无法在 45 秒内绑定(bind)到锁定端口 7054 (Selenium::WebDriver::Error::WebDriverError)

sql - 删除基于多列的重复记录

ruby-on-rails - 是否可以反转类中包含的模块?

javascript - Rails-toastr : add a close button

ruby-on-rails - 将 Chiliproject 部署到 Dreamhost