simple_form_for:用ajax更新内容的一部分

时间:2015-04-14 15:28:15

标签: ruby-on-rails ajax haml simple-form

我有一个调用部分的表单:

# form.html.haml
= simple_form_for(resource) do |form|
  = form.input :foo
  = render partial :some_fields, locals: { form: form }

# _some_fields.html.haml
= form.input :bar

我的问题是我必须用ajax更新部分,我不知道如何从我的控制器创建表单var:

def ajax_form_fields
  render partial :some_fields, locals: { form: ? }
end

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我发现实现这一目标的唯一方法是在_some_fields.html.haml的开头添加这一行:

- form ||= nil; simple_form_for(resource) { |f| form ||= f }

因此,我不需要将表单var传递给partial:

def ajax_form_fields
  render partial :some_fields
end