我正在使用vhochstein的active_scaffold分支,它在rails 3上运行得非常好,除了一些小错误 - http://github.com/vhochstein/active_scaffold。
在rails 2.3中,以下代码禁用链接:
return "<a class='disabled'>#{text}</a>" unless authorized
但在Rails 3中,它会导致转出的html标签打印出来,如下图所示:
如何使这个return语句的内容呈现出它在rails 3中的应用方式?
上面的代码来自vendor / plugins / active_scaffold / helpers /
中的list_column_helpers.rb
文件
更新:
Floatless通过建议在代码中添加.html_safe
来解决此问题。
我后来发现还需要进行以下更改,因为有多个代码可以响应在active_Scaffold中禁用操作链接:
在/plugins/active_scaffold/frontends/default/views/_list_actions.html.erb更改:
<%= record.authorized_for?(:crud_type => etc etc etc -%>
By making it use "raw"
i.e.
<%= raw record.authorized_for?(:crud_type => etc etc etc -%>
无论如何,多亏了浮动,希望hochstein先生能够使用这些东西。
答案 0 :(得分:12)
试试这个:
return "<a class='disabled'>#{text}</a>".html_safe unless authorized