将 link 添加到 Rails ActiveAdmin 视图中的快速通知
Add link to a flash notice in Rails ActiveAdmin view
我正在尝试在 active-admin controller.But 的成功创建操作的闪现消息中添加一个 link link 的 HTML 正在被转义并且在视图中显示为纯文本。
Rails 5.2.1,ruby 2.5.3p105(2018-10-18 修订版 65156)[x86_64-linux]
例如:如果我尝试做
flash[:success] = "Complete this quick survey. <a href='#{url}'>Click here</a>".html_safe
即显信息显示为,
"Complete this quick survey. <a href='https://www.example.com'>Click here</a>"
预期行为:Flash 消息中应该有有效的 link
实现您的目的的唯一方法(可能不是一个好的方法)是重写 activeadmin
的 :build_flash_messages
方法,该方法生成即显消息。
这是覆盖版本(添加 .html_safe
)。将此代码放在初始值设定项中的某处。
class ActiveAdmin::Views::Pages::Base
def build_flash_messages
div class: 'flashes' do
flash_messages.each do |type, message|
div message.html_safe, class: "flash flash_#{type}"
end
end
end
end
我正在尝试在 active-admin controller.But 的成功创建操作的闪现消息中添加一个 link link 的 HTML 正在被转义并且在视图中显示为纯文本。
Rails 5.2.1,ruby 2.5.3p105(2018-10-18 修订版 65156)[x86_64-linux]
例如:如果我尝试做
flash[:success] = "Complete this quick survey. <a href='#{url}'>Click here</a>".html_safe
即显信息显示为,
"Complete this quick survey. <a href='https://www.example.com'>Click here</a>"
预期行为:Flash 消息中应该有有效的 link
实现您的目的的唯一方法(可能不是一个好的方法)是重写 activeadmin
的 :build_flash_messages
方法,该方法生成即显消息。
这是覆盖版本(添加 .html_safe
)。将此代码放在初始值设定项中的某处。
class ActiveAdmin::Views::Pages::Base
def build_flash_messages
div class: 'flashes' do
flash_messages.each do |type, message|
div message.html_safe, class: "flash flash_#{type}"
end
end
end
end