试图找出为什么我的Rails警报无法正常工作

时间:2018-09-03 01:12:25

标签: ruby-on-rails

无论出于何种原因,我都无法在Rails中找到正式记录的警报类型列表。在我的控制器中,我正在将用户重定向回去,到目前为止,structCols助手似乎并未将我的第二个参数添加到list("66"); list("67"); list("68")变量中。

例如,这有效:

services.AddIdentityServer (options => {
          options.Discovery.ShowIdentityScopes = false;
          options.Discovery.ShowApiScopes = false;
          options.Discovery.ShowClaims = false;

          options.UserInteraction.LoginUrl = "http://authUI/Login" //vue UI
        })

这不是:

redirect_back

这是我的flash在显示警报时的样子:

redirect_back fallback_location: users_path, notice: "Added user."

我有redirect_back fallback_location: users_path, danger: "Deleted user." views/layouts/application.html.erb助手的原因是因为Rails似乎使用了 <% flash.each do |key, value| %> <br /> <div class="alert alert-<%= key_type(key) %> fade in"> <button class="close" data-dismiss="alert"> × </button> <i class="fa-fw fa fa-<%= key_icon(key) %>"></i> <strong><%= key.capitalize %>:</strong> <%= value %> </div> <% end %> 之类的警报类型,这些警报类型与我主题的警报不符。

因此,我在key_type打开之后放置了key_icon,我可以看到,如果我设置了notice的redirect_back命中了,这意味着有东西在闪动。但是我尝试使用binding.pryflash.eachnotice等重定向回去,但是它们都不起作用。

我不确定自己在做什么错,但是我无法弄清楚danger中实际设置了什么。

如果我在error方法之前手动设置它,那么它可以完美地工作,就像这样:

warning

但不能使用redirect_back方法。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

查看官方指南https://guides.rubyonrails.org/action_controller_overview.html#the-flash

默认情况下,它仅处理noticealert,并且您可以通过键flash使用所需的任何内容。该示例使用redirect_to,但我想redirect_back使用相同的逻辑进行闪光。