在 show 动作中,有一个逻辑需要我定义:
@object.nested_object.new (or @object.nested_object.build or @object.nested_object.create)
但是,当是时候使用类似的东西显示nested_objects 列表时:
@object.nested_objects.each do |nested_objects|
#display
end
使用@object.nested_object.new 创建的临时嵌套对象有一个额外的行项。
有没有办法在显示实际嵌套对象列表之前强制删除该临时对象?
或者是否有另一种方法来完成以下操作:
-creating a temporary nested_object for logic tests
-showing a list of nested_objects
我尝试过类似的东西:
temp_nested_object = @object.nested_object.new
temp_nested_object.delete
但没有成功。
谢谢你的时间!
更新:我正在努力做到这一点:
<% if can? :create, @project.tasks.build %>
从这里: https ://github.com/ryanb/cancan/wiki/Nested-Resources 我试图找到其他方法来实现这一点: https ://github.com/ryanb/cancan/issues/608 但似乎我需要在视图中解决它。