3

我正在使用 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 标签被打印出来,如下图所示:

https://internet-websites.s3.amazonaws.com/image2886.png

如何使此 return 语句的内容呈现它应该在 rails 3 中的方式?

上面的代码来自list_column_helpers.rbvendor/plugins/active_scaffold/helpers/ 中的文件

更新:

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 -%>

无论如何,感谢 floatless 并希望 hochstein 先生能够使用这些东西。

4

1 回答 1

12

试试这个:

return "<a class='disabled'>#{text}</a>".html_safe unless authorized
于 2010-08-01T14:20:04.227 回答