添加远程:=>在Form_for上为true

时间:2012-12-15 14:21:43

标签: javascript ruby-on-rails ruby ajax

在我的_form.html.erb文件中,我有;

<%= form_for(@document) do |f| %> 
<% end %>

当我添加

<%= form_for(@document), :remote => true do |f| %> 
<% end %>

我收到错误。我想在此表单中添加ajax,以便用户可以提交它,它会显示一个通知保存&#34;已保存&#34;然后用户可以在表单内的textarea中继续写作。

错误说:

SyntaxError in Documents#edit

Showing /app/views/documents/_form.html.erb where line #1 raised:

<%= form_for(@document), :remote => true do |f| %>

它说第1行(上面)是语法错误。

如何在form_for中添加remote true,以便添加Ajax?

更新

因此,我有两个答案;

<%= form_for(@document, :remote => true) do |f| %>

<%= form_for @document, :remote => true do |f| %>

他们都工作但是比另一个更好或他们最终做同样的事情?

3 个答案:

答案 0 :(得分:13)

您已在参数列表后插入:remote = true权限。请不要使用括号。

<%= form_for @document, :remote => true do |f| %> 

答案 1 :(得分:1)

<%= form_for(@document, :remote => true) do |f| %>
  ...
<% end %>

转发:http://apidock.com/rails/ActionView/Helpers/FormHelper/form_for

答案 2 :(得分:0)

也可以使用命名空间

<%= form_for [:namespace, @document], html: { help: :block }, remote: true do |f| %>
  ...
<% end %>