我正在运行rubyonrails3.1。我想知道一种“常用”的实践/技术,用于在部分模板文件中设置变量(例如,status = 'loaded'),以便在呈现该部分模板时不重复变量设置。也就是说,我有一个部分模板文件,在同一个请求中呈现了很多次,我想在日志中只显示一次警告消息(即,一次),即使部分模板加载了不止一次…出于表现原因(或“完美主义”…)。
简而言之,我只想在日志文件中显示一次“警告”消息。
我怎么能轻易地做到呢?

最佳答案

是的,可以对日志中的某些消息禁用日志记录,但这种方法不太容易(请参见this question),甚至对您的情况有害。
你应该扪心自问,为什么要这样?可能你做错了什么。例如,如果在循环中多次渲染模板,则有一个特殊的选项可供选择,这样可以获得更好的性能!假设你有这样的短信:

<% @followers.each do |follower| %>
  <%= render :partial => "follower", :locals => {:follower => follower}  %>
<% end %>

这可以通过选项:collection:
<%= render :partial => "follower", :collection => @followers %>

它的可读性更强,效率更高。完整的日志输出将帮助您进行调试。

10-08 17:15