我现在开始学习Ruby和Ruby on Rails框架。我发现,在表records
,我能找到一个纪录的5的ID,并通过使用下面的代码删除:为什么我不能在Rails中使用Record.all.destroy?
Record.find(5).destroy
这也在情理之中我链的方法来查找记录和摧毁它。但是,如果我要摧毁表中的所有记录,逻辑命令将以下,为all
选择器选择表中的所有记录:
Record.all.destroy
而这个返回NoMethodError!我知道我可以使用Record.destroy_all
或Record.delete_all
来完成此任务,但是,我想知道为什么我不能使用最合理的选择,而不必查找像delete_all
这样的东西。我是这个框架的新手,所以我完全有可能在这里错过了一些基本的东西。
感谢您提前提供任何答案。
确实是一个很好的问题,因为我先尝试了同样的事情......您可以使用Record.all.each {| r | r.destroy}'当然,但这不像'Record.all.destroy' – 2011-05-30 16:12:27