Я хочу, чтобы пользователи нажимали кнопку, чтобы опубликовать событие на моей странице публикации.Обновляет атрибуты из пустой form_for
просмотров/События/publish.html.erb
<%= form_for @event do |p| %>
<%= p.submit "Yes publish my event now" %> |
<%= link_to "Cancel", events_path %>
<% end %>
Пользователи могут получить к публикации страницы с моей страницы индекса
просмотров/События/index.html.erb
<% for event in @events %>
<%= link_to "Publish", publish_path(:id => event) %>
<% end %>
Публикация_пата определена в маршрутах, которые должны находиться в контроллере событий
routes.rb
match 'publish' => 'events#publish', :as => :publish
Вот мой контроллер событий
events_controller.rb
def publish
@event = Event.find(params[:id])
end
Когда я добавил код (см ниже), чтобы обновить модель событий в моем действии публикации контроллер будет обновлять атрибуты, но когда пользователь нажимает ссылку «Опубликовать» в моем индексе ех.
С помощью этого кода пользователи не могут видеть мою страницу публикации, когда нажимают на ссылку публикации в индексе. Вместо этого они будут отправлены обратно на страницу индекса, но все атрибуты будут обновлены.
def publish
@event = Event.find(params[:id])
if @event.update_attributes(:published_at => DateTime.now, :publish => true)
flash[:success] = "Your event has been publish"
redirect_to events_path
end
end
Вопрос в том, как я получаю пользователя от индекса страницы -> Publish страница -> нажмите на кнопку отправить -> обновить атрибуты -> вернуться на главную страницу с флэш-сообщение?
+1 для деталей, но можете ли вы объяснить проблему немного больше? Что происходит, что вы не хотите? –
Что вы подразумеваете под индексной страницей? Действие 'index' вашего' EventController'? Вы показываете вспышку на этой странице? – Mischa
В настоящее время происходит страница индекса -> нажмите ссылку, чтобы перейти на страницу «Опубликовать страницу ->» -> «Страница указателя». – Moose