Обычай маршрутизации:Как использовать form_for с настраиваемым маршрутом?
resources :blog, controller: 'posts'
Как переписать эту строку <%= simple_form_for(@post, blog_path) do |f| %>
, чтобы избавиться от ошибки ниже?
TypeError in Posts#edit
ActionView::Template::Error (no implicit conversion of Symbol into Integer)
Я также попытался <%= simple_form_for(blog_path(@post)) do |f| %>
, который избавляется от ошибки, но если я хочу, чтобы изменить форму входов опорожнять их сохраненные данные.
posts_controller
def new
@post = Post.new
respond_with(@post)
end
def edit
end
def create
@post = Post.new(post_params)
if current_user.admin
@post.save
respond_with(@post)
else
flash[:success] = 'Get the fuck out of here.'
redirect_to root_url
end
end
Эй, Крус. Спасибо за вашу помощь. Проблема с вашим ответом, хотя, если я пытаюсь создать новое сообщение в блоге, я получаю сообщение об ошибке «Нет сопоставлений маршрутов {: action =>« show »,: controller =>« posts »} отсутствующих необходимых ключей: [: id]' Any другие идеи о том, как мы можем сделать form_for работы с настраиваемым маршрутом? Еще раз спасибо! –
Попробуйте отредактировать. –
@ AnthonyGalli.com - Вы когда-нибудь решали это? Работала ли моя работа, или это все еще проблема? –