0

我有一个创建设备的表单。我想确保我传递给它的内阁存在。在设备模型中,我有:

validates_presence_of :cabinet_id, :message => 'Please enter full cabinet name beginning with data center code'

控制器对机柜进行操作以确定是否有空位。如果柜子不存在,这会使应用程序崩溃,因为它会尝试使用柜子的属性。

在尝试执行操作之前,如何获取表单以提醒用户机柜不存在?

4

1 回答 1

0

如果没有看到模型代码的其余部分,这有点困难,但我建议将“机柜操作”包装在一个条件中,例如。if cabinet_id.present? (do stuff) end

如果操作是自定义验证,则使其有条件,例如。validate :space_in_cabinet, if: :cabinet_id.

于 2013-05-13T14:06:28.213 回答