Rails没有为更新表单上的put方法创建隐藏字段

时间:2011-08-09 08:23:41

标签: ruby-on-rails-3 rest

我有一个名为Greetings的REST资源。

这是我的路线档案:

resources :greetings

我有一个表单来创建或更新问候语,如下所示:

     <%= form_tag(@greeting, :remote => true, :id => 'greeting_form') do %>
    <%= text_area :greeting, :content, :rows => 3, :placeholder => "Type your message..." %>
    <% end %>

注意:我使用的是form_tag,因为此表单还会收集用户数据。

这应该用method =&gt;创建一个隐藏字段但不是这样,它找不到路线。

我有什么想法可以将其提交给更新操作?

2 个答案:

答案 0 :(得分:0)

只需写下

<%= form_tag(@greeting, :remote => true, :id => 'greeting_form', :method => :put) do %>

一切都应该有效。

答案 1 :(得分:0)

您可以使用form_for代码并仍然收集如下用户数据:

  <%= form_for @greeting, :validate => true do |f| %>
    <%= f.text_area :content, :rows => 3, :placeholder => "Type your message..." %>
    <%= f.fields_for @user do |u| %>
      <%= u.text_field :name %>
    <% end %>
  <% end