我有一個導軌和嵌套視圖形成:使用fields_for創建在控制器中的形式對象
new.html.erb
<%= form_for @leads do |f| %>
<%= f.text_field :some_field %>
<%= f.fields_for :tickets do |ticket_builder| %>
<%= render 'tickets', f: ticket_builder %>
<% end %>
<% end %>
_tickets.html.erb
f.text_field :some_other_field
有在這種情況下,我需要通過ajax添加票部分,因此我需要通過控制器操作呈現該部分:
def add_ticket
resp = {}
resp[:html_options] = render_to_string(partial: "tickets", locals: { f: nil })
render text: resp.to_json
end
很明顯,由於傳遞給部分的f變量爲零,所以它應該是一個表單構建器。
如何將表單構建器從控制器傳遞給部分?
爲事實 - 你不能沒有掛機後其未來的開發會罵你:)取決於你想要的是另一種更好的解決方案,以用戶的實現它。例如,如果你想動態地添加票據,你可以試試這個gem https://github.com/nathanvda/cocoon – 2014-10-28 21:36:57