0
我想知道是否有方法返回一個對象的所有子對象,或者如果它們都不存在,就創建一個新的子對象。有沒有一種方法find_child_or_create在Rails中類似於find_or_create?
這樣的方法可以方便地創建嵌套表單,在這種情況下,經常出現這樣的情況,因爲子對象尚未初始化,嵌套表單不顯示。
謝謝。
我想知道是否有方法返回一個對象的所有子對象,或者如果它們都不存在,就創建一個新的子對象。有沒有一種方法find_child_or_create在Rails中類似於find_or_create?
這樣的方法可以方便地創建嵌套表單,在這種情況下,經常出現這樣的情況,因爲子對象尚未初始化,嵌套表單不顯示。
謝謝。
我爲此在嵌套形式:
<%= form_for @parent do |f| %>
...
<%= f.fields_for @parent.children || @parent.children.build do |child| %>
...
<% end %>
...
<% end %>
或將其包裝成一個模型的方法:
class Model < AR::Base
...
def children_form
children || children.build
end
end
然後用它在形式
<%= f.fields_for @parent.children_form do |child| %>
據我所知,沒有這樣的方法。
即邏輯控制器中的所屬或模型,而不是視圖。 –
Yeap,它屬於模型或演示者,而不是控制器:) – fl00r
謝謝樓。我想在嵌套的形式的情況下,Rails應該實例化一個子對象,當沒有可用的默認情況下。 – AdamNYC