after_saveコールバックで最近保存されたレコードIDを使用したいのですが、可能であればどうすればよいですか?
after_save :create_children
def create_children
self.id
end
更新:保存機能に問題が発生しました。時間を無駄にして申し訳ありません。
ありがとう
after_saveコールバックで最近保存されたレコードIDを使用したいのですが、可能であればどうすればよいですか?
after_save :create_children
def create_children
self.id
end
更新:保存機能に問題が発生しました。時間を無駄にして申し訳ありません。
ありがとう
私はこれでそれを試しました:
class Thing < ActiveRecord::Base
after_save :test_me
def test_me
puts self.id
end
end
およびコンソール:
$ rails c
Loading development environment (Rails 3.0.4)
>> x=Thing.new
=> #<Thing id: nil, name: nil, created_at: nil, updated_at: nil>
>> x.save
2
=> true
>> y=Thing.create
3
=> #<Thing id: 3, name: nil, created_at: "2011-04-27 15:57:03", updated_at: "2011-04-27 15:57:03">
あなたのモデルでは他に何が起こっていますか?
オブジェクトを保存した後にreload()を呼び出すと、self.idが入力されます