2015-04-30 2 views
1

Я могу сделать частичным и все такое, но проблема в том, когда я хочу отправить форму другому контроллеру, я получаю ошибку маршрута.ошибка маршрута частичный другой контроллер без модели

Итак, у меня есть эта главная страница, веселье, чтобы быть точным. Форма создается с помощью контроллера. Я хочу, чтобы эта форма находилась на главной странице. Но когда я добираюсь до своей страницы и нажимаю кнопку, это дает мне ошибку маршрута. Когда я делаю частичное и изменяю файл только на представление, я могу видеть свои формы. У меня нет модели. Я просто хочу просто подчиниться контроллеру.

на главной странице загулял

<%= render partial: '/contact/maillist' %> 

также попытался

<%= render template: '/contact/maillist' %> 

View, также попытался 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

Вы должны изменить form_tag к одному из ниже

<%= form_tag('contact/maillist', method: "post") do %> 

или

<%= form_tag(url_for(controller: 'contact', action: 'maillist'), method: "post") do %> 
Смежные вопросы