标记空白在第一次和后续页面加载之间不同

时间:2012-09-18 05:51:32

标签: ruby-on-rails ruby-on-rails-3 haml asset-pipeline minify

我很难找到开始调试的重点。基本上,我正在设置Shapado的副本,这是一个相当普通的Rails 3应用程序,它有很多像这样的.html.haml视图:

.author
  %span
    = I18n.t('global.by_semi')
  = render :partial => "users/user_mini" ...

我第一次在生产模式下加载网站页面时,输出中的所有标记都会混在一起:

<div class="author"><small><span>Asked by</span><a href="/users/jpatokal"
data-layout="user" rel="author">Jani</a>6

其错误地呈现为“Jani 6提问”。

但是在开发模式中,以及(更奇怪的是)第二次以及随后的时间我在生产模式下加载相同的页面时,标签由换行符分隔:

<div class="author">
<small>
<span>
Asked by
</span>
<a href="/users/jpatokal" data-layout="user" rel="author">Jani</a>
6

由于换行符是HTML中的空格,现在可以正确呈现:“Jani提问6”

我认为这与Rails 3资产流水线,缩小和/或缓存有关,但据我所知,配置(see Gitorious)实际上并没有管道Haml。使用c / e / production.rb快速查看config / environments / development.rb的差异也没有显示任何明显相关的内容。帮助

1 个答案:

答案 0 :(得分:1)

输出不应在后续调用中更改。尝试使用bundle update haml更新HAML。

您可以在falseapplication.rbproduction.rb中强制“丑陋”模式Haml::Template.options[:ugly] = false

{{1}}

http://haml.info/docs/yardoc/file.HAML_REFERENCE.html#options