我可以渲染部分和所有这些,但问题是当我想将表单提交给另一个控制器时,我收到路径错误。
所以我有这个主页,准确的狂欢。使用其控制器创建表单。我希望这个表格在狂欢的主页内。但是当我到达我的页面并单击按钮时,它会给我路由错误。当我渲染局部并将文件更改为视图时,我可以看到我的表单。我没有模特。我只想简单地提交给控制器。
主狂欢页面上的
<%= render partial: '/contact/maillist' %>
也尝试了
<%= render template: '/contact/maillist' %>
查看,也尝试了controller: /contact
<%= form_tag({controller: "contact", action: "maillist"}, method: "post") do %>
<%= text_field_tag :email, params[:email] %>
<%= submit_tag "Add Me", remote:true %>
<% end %>
控制器
class ContactController <Spree::BaseController
def maillist
#...whatever, don't think this is the issue?
end
end
的routes.rb
#things i tried...all doesn't work
get 'contact/maillist' => 'contact#maillist'
post 'contact/maillist' => 'contact#maillist'
match 'contact', to: 'contact#maillist', via: :post
答案 0 :(得分:0)
您应该将form_tag更改为以下
之一<%= form_tag('contact/maillist', method: "post") do %>
或
<%= form_tag(url_for(controller: 'contact', action: 'maillist'), method: "post") do %>