ruby on Rails,创建新对象,使用 create 还是 new 方法?
我正在尝试通过 API 创建一个对象,即不需要任何表单,我应该执行 MyModel.new(:name => params[:name])
或 MyModel.create (:name => params[:name])
?
假设我在 routes
中有 resources : my_models
我检查过,发现方法可以使用参数哈希。
I am trying to create an object via an API, i.e. no forms are required, should I be doing MyModel.new(:name => params[:name])
or MyModel.create(:name => params[:name])
?
Assume I have resources : my_models
in routes
I checked and I see that methods can use the params hash ok.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
.new
创建一个实例(但您仍然需要.save
它)。同时
.create
创建一个实例并一次性保存它。希望这有助于您决定使用哪个。
.new
makes an instance (but you'll still need to.save
it).while
.create
makes an instance and saves it in one go.Hopefully that helps your decision on which to use.
这取决于你想得到什么。
new
方法只是实例化新对象,而create
方法创建一个对象并将其保存到数据库(如果验证通过)。It depends on what are you want to get.
new
method simply instantiates new object andcreate
method creates an object and saves it to the database, if validations pass.