是否可以在 erb 模板中要求一个类?
Posted
技术标签:
【中文标题】是否可以在 erb 模板中要求一个类?【英文标题】:Is it possible to require a class in an erb template? 【发布时间】:2012-05-27 11:48:46 【问题描述】:我有一个需要使用的 erb 模板:
CGI.unescapehtml(someEscapedHTML)
所以我需要'cgi',但是以下失败:
<% require 'cgi' %>
出现错误:
无法复制 NilClass
【问题讨论】:
失败如何?请在描述中更加准确。 @RyanBigg 更新了错误的问题。另请参阅单独的问题:***.com/questions/10677908/… 【参考方案1】:首先,请不要在 ERB 中使用 gems 或库。那么 Rails 本身已经需要 CGI 了。
如果您想防止 Rails 3 自动转义,请考虑使用
<%= data.html_safe %>
改为。
【讨论】:
【参考方案2】:我个人从不在视图中添加 require 语句,因为 1)它很难看,2)如果另一个视图需要该 require 怎么办?
一个更好的地方是在底部的config/application.rb
,或者在config/initializers
的文件中。
【讨论】:
确实如此。只是做一些快速而肮脏的事情。以上是关于是否可以在 erb 模板中要求一个类?的主要内容,如果未能解决你的问题,请参考以下文章
Rails 3.2 - haml vs. erb。haml是否更快?(2012年2月)