ruby-on-rails 正确显示Rails flash错误消息

gjmwrych  于 2023-10-21  发布在  Ruby
关注(0)|答案(1)|浏览(113)

我正在努力让flash[:error]消息在我的浏览器上正确显示,但我得到了这个instead

,我需要它显示一个“必须存在”或“作者必须存在”的错误消息。没有额外的语法和括号。我知道它看起来像一个散列,但我似乎不能解决这个问题
这就是我的创建操作的样子

@policy = Policy.create(policy_params)
  
      respond_to do |format|
        if @policy.valid?
         format.html { redirect_to policy_url(@policy), notice: "Policy was successfully created." }
         format.json { render :show, status: :created, location: @policy}
        else
          format.html do
            flash[:error] = @policy.errors
            redirect_to new_policy_path
         end
        end

而在我看来,闪存错误语法看起来像这样

<%= flash[:error] %></h3>
e5njpo68

e5njpo681#

您可以使用full_messages属性来制造错误:
flash[:error] = @policy.errors.full_messages.first

flash[:error] = @policy.errors.full_messages.to_sentence
最好使用alertnoticehttps://www.rubyguides.com/2019/11/rails-flash-messages/

相关问题