В Rails 3, используя Formtastic и Devise, общие маршруты приводят к ошибкам при добавлении новой записи для модели - PullRequest
1 голос
/ 07 марта 2011

У меня есть очень простая программа rails 3 с 2 моделями: модель пользователя для Devise и модель записи, которая захватывает текстовое поле и идентификатор пользователя.

Мой файл маршрутов довольно прост:

devise_for :users
resources :users, :writings
root :to => "users#index"

И моя форма для писем, использующих Formtastic, тоже:

<% semantic_form_for(@writing, :html => {:method => :put}) do |f| %>
<%= f.input :main %>
<%= f.input :user_id, :collection => current_user, :as => :hidden %>
<%= f.buttons %>
<% end %>

Когда я пытаюсь создать новую запись, форма выглядит великолепно, но затем, когда я нажимаю кнопку отправки, я получаю следующую ошибку:

No route matches "/writings"

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

Есть идеи, где я сбился с пути?

1 Ответ

1 голос
/ 07 марта 2011

Крис, попробуйте поместить объявление формы следующим образом

<% semantic_form_for @writing do |f| %>
<%= f.input :main %>
<%= f.input :user_id, :collection => current_user, :as => :hidden %>
<%= f.buttons %>
<% end %>

У меня есть идея, что когда вы указываете параметр :html, вы "переопределяете" некоторые значения по умолчанию в formtastic.Извините, я не эксперт по формастатике.Я использовал немного, а затем решил пойти на simple_form :).

...