Должны ли мои изменения и новые действия повторно использовать один и тот же вид? (редактирование поста) - PullRequest
2 голосов
/ 16 декабря 2010

У меня есть эта настройка в моих маршрутах:

namespace :admin do
     resources :posts

  end

, поэтому в моем admin / posts_controller.rb у меня есть новые действия, создание и редактирование.

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

Как я могу это сделать?

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

Для новой страницы следует выполнить публикацию в действии 'create', а дляредактирование, которое, я думаю, должно публиковаться в другом действии 'update' (которое является запросом PUT согласно моим маршрутным рейкам)?

1 Ответ

3 голосов
/ 16 декабря 2010

Rails довольно умный, форма похожа на

<% form_for post do |f| %>
<% end %>

будет публиковать в действии создания, если post.new_record? == true, в противном случае в действии обновления.

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

В качестве альтернативы вы можете просто иметь один вид и выполнять свою собственную логику, основанную на post.new_record? - но я бы посоветовал против этого, потому что в итоге вы получите излишне сложное представление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...