したがって、root_path 内の部分としてレンダリングされるフォームからエラーを取得しようとしています。投稿しようとして失敗 (または成功) した後、root_path にリダイレクトしたいと考えています。ただし、redirect_to は検証用の情報を保存しないことを決定します。
これを行う方法を疑問に思います。
class PostsController < ApplicationController
def new
@post = Post.new
end
def create
@nom = current_user.noms.build(params[:nom])
if @nom.save
flash[:success] = "Nom created!"
redirect_to root_path
else
flash[:error] = @nom.errors
redirect_to root_path
end
私のホーム/インデックスでは、投稿のフォームの部分をレンダリングします。
= form_for [current_user, @post] do |f|
= f.text_field :name
= f.select :category
= f.text_area :description
= f.submit "Post", class: "btn btn-primary"
- @post.errors.full_messages.each do |msg|
%p
= msg
root_path にリダイレクトした後、フォームの下部にエラーを保持する必要があります。
また、検証が失敗した後にそこにあった情報を保持したいと思います。