我在视图中有一个与我的初始表单分开的表单字段。我希望使用该应用程序的人能够编辑单个字段而无需拉出整个表单。我的代码如下
<%= form_for :user, :url => {:controller => 'users', :action => 'update' } do |f| %>
<%= f.text_field :barcode %>
<%= submit_tag 'Register' %>
<% end %>
尝试将更改提交到指定的表单字段时,我认为我在创建方法上收到错误。它将我重定向到具有正确ID的用户控制器,但是给出了以下错误。
Unknown action
The action '1' could not be found for UsersController
我尝试将方法从更新更改为创建,但随后它会显示空白表单,我只是希望能够编辑指定的字段而无需重新创建表单并获取错误。有什么想法吗?
答案 0 :(得分:4)
您没有将用户对象传递给表单。 尝试使用路由生成的路径助手:
<%= form_for @user, :url => user_path(@user) do |f| %>
答案 1 :(得分:1)
<%= form_for(@user), :url => url_for(:controller => 'users', :action => 'update') do |f| %>
<%= f.text_field :barcode %>
<%= f.submit, 'Register' %>
<% end %>
现在应该可以工作......