0

我正在使用遵循此处解释的 resource_controller 原则的控制器。

如您所见,我无法完全控制(新建、创建等)所有这些预加载数据,这意味着如果我想创建一个新实体,假设@user已经调用了以下代码@user = User.new

我可以包含一些验证的唯一方法是通过回调,但是一旦回调决定取消新方法,我总是会遇到 Hash freeze 错误。换句话说,我不能说 @user = User.new @user.destroy

我能想出的唯一技巧是 @user = User.new @user.save @user.destroy

有谁知道更好的方法,不涉及将内容保存到数据库?顺便说一句,活动记录和活动模型有什么区别?

4

1 回答 1

1

在销毁之前检查它是否已保存如何?

@user.destroy unless (@user.new_record?)
于 2011-05-25T02:00:24.317 回答