首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在after_save回调中使用最近保存的记录id的Rails ActiveRecord

在after_save回调中使用最近保存的记录id的Rails ActiveRecord
EN

Stack Overflow用户
提问于 2011-04-27 21:58:17
回答 2查看 5.6K关注 0票数 2

我想在after_save回调中使用最近存储的记录ID,如果可以,如何实现?

after_save :create_children

def create_children

*self.id

end

更新:很抱歉我的存储功能出了点问题,我的错,抱歉浪费你的时间

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-27 23:58:14

我只是用这个来试一下:

代码语言:javascript
运行
复制
 class Thing < ActiveRecord::Base
   after_save :test_me

   def test_me
     puts self.id
   end
 end

在控制台中:

代码语言:javascript
运行
复制
$ 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">

你的模型中还发生了什么?

票数 5
EN

Stack Overflow用户

发布于 2011-04-27 22:11:08

如果在保存对象后调用reload(),则将填充self.id

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5805319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档