【发布时间】:2018-03-23 04:10:24
【问题描述】:
我有一个模型,它被称为Scripts 它has_many => Pages 因此,Page belongs_to => Scipts
我删除了一个页面对象,现在在运行Script.pages 时,第一个值是nil(幸运的是它是第一个值,因为如果不是,我没有其他方法可以引用它,因为它没有 ID)
我需要 destroy nil 值,因为它通过成为 nil 破坏了我的应用程序但是,运行 Script.pages.first.destroy 返回:
NoMethodError: undefined method `destroy' for nil:NilClass
这是有道理的。现在,我需要知道如何从我的页面集合中获取这些损坏的数据。
有没有办法做到这一点?谢谢!
【问题讨论】:
-
你不能破坏不存在的东西。如果您需要它不是
nil,那么您需要创建一个页面,以便first返回一个有用的对象。您需要销毁它。 -
你是如何在页面调用中得到 nils 的?
标签: ruby-on-rails ruby activerecord