return 最近在 ActiveRecord 中创建的对象的最佳方法?
Best way to return recently created object in ActiveRecord?
我正在创建一个对象,调用它时会创建一个数据库记录,我希望此函数 return 新创建的对象。这是我得到的:
data = {foo: 'foo', bar: 'bar'}
Dummy.new(data).save! # true
Dummy.last # newest record in the database
我担心当同一数据库上有多个会话时这意味着什么。是否有可靠的方法来获取我刚刚创建的记录?
只需将您创建的实例分配给一个变量:
data = {foo: 'foo', bar: 'bar'}
dummy = Dummy.new(data)
dummy.save!
dummy # the record you just created
或者像这样使用 create!
而不是 new
和 save!
:
data = {foo: 'foo', bar: 'bar'}
Dummy.create!(data) # returns the created instance or raises an error if not successful
我正在创建一个对象,调用它时会创建一个数据库记录,我希望此函数 return 新创建的对象。这是我得到的:
data = {foo: 'foo', bar: 'bar'}
Dummy.new(data).save! # true
Dummy.last # newest record in the database
我担心当同一数据库上有多个会话时这意味着什么。是否有可靠的方法来获取我刚刚创建的记录?
只需将您创建的实例分配给一个变量:
data = {foo: 'foo', bar: 'bar'}
dummy = Dummy.new(data)
dummy.save!
dummy # the record you just created
或者像这样使用 create!
而不是 new
和 save!
:
data = {foo: 'foo', bar: 'bar'}
Dummy.create!(data) # returns the created instance or raises an error if not successful