1

我正在使用 Devise 4.8.1 运行 Rails 6.1.4.4,并将我的设置配置为使用 importmaps 和 hotwire-rails。通过 Devise 登录时,我不再收到一条消息。

我确实在系统的其他部分收到了闪存消息。

在设计控制器中,我可以看到正在创建的 Flash 消息,但浏览器中没有出现任何内容。

  def set_flash_message(key, kind, options = {})
    message = find_message(kind, options)
    if options[:now]
      flash.now[key] = message if message.present?
    else
      flash[key] = message if message.present?
    end
  end

我的 application.html.erb 布局中有以下内容

<div id="notice" class="alert alert-info">
  <%= notice %>
</div>

在我的控制器中,我的闪存消息是这样工作的;

  def create
    @wine = current_user.wines.new(wine_params)
    if @wine.save
      redirect_to wines_path, notice: "Wine was successfully created."
    else
      render :new
    end
  end

我需要做什么才能让 Devise 在登录成功/不成功时显示 Flash 消息?

4

0 回答 0