如何检查ActiveRecord对象是新的还是已经持久化了?
当前回答
一个ActiveRecord对象生命周期:
1.新纪录
item = Item.new
item.new_record? #=> true
2.坚持
item.save
item.persisted? #=> true
3.改变了
item.name = "other"
item.changed? #=> true
4.破坏
item.destroy
item.destroyed? #=> true
其他回答
一个ActiveRecord对象生命周期:
1.新纪录
item = Item.new
item.new_record? #=> true
2.坚持
item.save
item.persisted? #=> true
3.改变了
item.name = "other"
item.changed? #=> true
4.破坏
item.destroy
item.destroyed? #=> true
# new_record吗?正是这样:
object.new_record?
推荐文章
- 确定ActiveRecord对象是否为New
- Rails中的OO设计:在哪里放置东西
- 如何在Heroku上重新启动rails服务器?
- respond_to块如何工作?
- rails局部模板中的可选局部变量:如何退出(defined?foo)混乱?
- Ruby Bundle Symbol not found: _SSLv2_client_method (LoadError)
- rails耙任务是否提供对ActiveRecord模型的访问?
- 无法安装pg gem
- (1) libcurl不支持或禁用https协议
- Destroy和Delete的区别
- 警告:无法验证CSRF令牌真实性轨道
- 如何在Rails中显式指定模型的表名映射?
- 将字符串转换为可符号的ruby
- 如何在Rails 4中使用attr_accessible ?
- bundle安装失败,SSL证书验证错误