Множественный form_tag в приложении rails

Это код в моем logins_form.html.erb

<%= form_for(@login) do |f| %>
  // code here
    <%end%>

    <%= form_tag(:controller=>'posts', :action=>'index') %>
    // code here
    <%end> --1

    <%= form_tag(:controller=>'logins', :action=>'create') %>
     // code here
    <%end%> --2

Он принимает только один из 1 или 2, но не оба. Почему так? Даже если я удалю одну из двух, обе формы будут перенаправлены на логины.

Что я делаю неправильно?

Спасибо.


person Ava    schedule 29.09.2011    source источник


Ответы (2)


Вы скопировали / вставили свой точный код?

Если это так, посмотрите на конец вашей первой формы, и вы заметите, что вам не хватает% в закрывающем%>, что приведет к неправильной компиляции кода шаблона erb.

У вас должно получиться нормально использовать две формы, если вы не пытаетесь вложить их друг в друга.

person JDutil    schedule 29.09.2011
comment
ох, это была опечатка. Я не могу, это разрешает только один конец, и я попытался удалить форму, которая перенаправляет на логины, тогда также другая форма перенаправляется на логины. Кажется, это перенаправление по умолчанию, но я не понимаю, почему? - person Ava; 30.09.2011
comment
Похоже, у вас может быть проблема с аутентификацией, когда вы перенаправляетесь для входа в систему, поскольку ваш сеанс не вошел в систему. Что отображается в вашем журнале, когда вы публикуете форму? Публикует ли он правильное действие, а затем перенаправляет на логин? Также как вы отправляете форму? С помощью кнопки или вы сфокусировались на неправильной форме, а затем нажали ввод? - person JDutil; 30.09.2011
comment
У меня есть кнопка submit_tag, и нажатие на нее приводит к http://0.0.0.0:3000/logins. В браузере отображается NoMethodError in LoginsController#create undefined method Name 'вместо nil: NilClass`, потому что я там ничего не определил. - person Ava; 30.09.2011

Было бы интересно увидеть вывод HTML, потому что у вас не может быть вложенных форм на странице check вопрос

person Bohdan    schedule 30.09.2011