我试图在重定向到页面后显示通知,但它没有出现。
这是重定向 -
redirect_to :action => :index, :notice => "My redirect"
您可以在网址中看到该消息,但似乎活动管理员中没有任何代码可以显示该消息。
如何在主动管理中呈现它?
答案 0 :(得分:27)
似乎还有一些问题我还没有找到,但如果你在寻找解决办法,那就是我所做的:
member_action :test do
flash[:notice] = "This is a test notice!"
redirect_to :action => :index
end
我看到的问题是,当您将:notice
放入redirect_to
方法时,通知邮件会进行网址编码并添加到网址
member_action :test do
redirect_to :action => :index, :notice => "This is a test notice!"
end
结果
/admin/model?notice=This+is+a+test+notice!
这不太理想。我注意到对active_admin文档进行了更改,其中包括将{}
放在redirect_to
的第一个参数周围以解决此问题,但是,对我来说,这会导致错误。
member_action :test do
redirect_to {:action => :index}, :notice => "This is a test notice!"
end
导致
syntax error, unexpected tASSOC, expecting '}'
redirect_to {:action => :index}, :notice => "This...
我发布了对该特定拉取请求@ active_admin on github的评论,希望有人可能有另一个建议,因为我很难过。
无论如何,这些解决方案中的一种可能适合您。祝你好运。
答案 1 :(得分:-5)
Active Admin不会呈现Flash消息,它认为它们以t布局呈现呈现它们。 当您运行active_admin:install generator时,它会提到:
$ rails g active_admin:install
...
Some setup you must do manually if you haven't yet:
...
3. Ensure you have flash messages in app/views/layouts/application.html.erb. For example:
<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>