自定义操作导致“无路由匹配”路由错误

时间:2013-08-27 19:51:05

标签: ruby-on-rails-3 simple-form

我正在尝试将表单提交给自定义操作。表单甚至不会呈现,它只显示一个错误:'No route matches'“。

的routes.rb

resources :users do
  member do
    post :add_foo
  end
end

users_controller.rb

def add_foo
  puts "!!! in add_new_foo .. params = " + params + " !!!"
end

用户/ new.html.erb

<%= simple_form_for(@user) do |f| %>
  <%= button_to 'download', add_foo_user_path(@user) %>
<% end %>

我也试过

<%= simple_form_for @user, :url => add_foo_user_path(@user), :method => :post do |f| %>
  <%= f.submit "Add" %>
<% end %>

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

一切都是正确定义的。由于@user实例不存在,最有可能引发错误。