活动管理员 - 页面上未显示Flash消息

Ale*_*lex 18 ruby-on-rails ruby-on-rails-3.1 activeadmin

我试图在重定向到页面后显示通知但它没有出现.

这是重定向 -

redirect_to :action => :index, :notice => "My redirect"
Run Code Online (Sandbox Code Playgroud)

您可以在网址中看到该消息,但似乎活动管理员中没有任何代码可以显示它.

任何想法如何在活动管理员内呈现它?

sor*_*ens 28

似乎还有一些问题我还没有找到,但是如果你在寻找解决办法,那就是我做的:

member_action :test do
  flash[:notice] = "This is a test notice!"
  redirect_to :action => :index
end
Run Code Online (Sandbox Code Playgroud)

我看到的问题是,当你:notice输入redirect_to方法时,通知消息是url编码并添加到URL

member_action :test do
  redirect_to :action => :index, :notice => "This is a test notice!"
end
Run Code Online (Sandbox Code Playgroud)

结果是

/admin/model?notice=This+is+a+test+notice!
Run Code Online (Sandbox Code Playgroud)

这不太理想.我注意到对active_admin文档的更改,包括放置{}第一个参数redirect_to来解决此问题,但是,对我来说,这会导致错误.

member_action :test do
  redirect_to {:action => :index}, :notice => "This is a test notice!"
end
Run Code Online (Sandbox Code Playgroud)

结果

syntax error, unexpected tASSOC, expecting '}'
    redirect_to {:action => :index}, :notice => "This...
Run Code Online (Sandbox Code Playgroud)

在github上发布了关于特定拉取请求@ active_admin的评论,希望有人可能有另一个建议,因为我很难过.

无论如何,这些解决方案中的一个可能适合您.祝好运.

  • 你遇到了ruby语法的问题.尝试添加括号:`redirect_to({action :: index},注意:'随便')` (4认同)