我写了这个 HAML:
%script{:src => "http://www.google.com/jsapi?key=mykey" :type => "text/javascript"}
注意 :src 和 :type 之间缺少的逗号。
在我的生产服务器 (Dreamhost/Linux) 上,当我尝试查看页面时收到以下记录的异常:
ActionView::TemplateError (compile error
/home/.kuce/sugarthrill_stage/site/releases/20090927200712/app/views/layouts/standard.haml:6: syntax error, unexpected ':', expecting ')'
haml_temp = _hamlout.push_script(haml_temp, false, false, false, false, false);_hamlout.open_tag("script", false, true, false, false, {}, false, false, nil, nil, :src => "http://www.google.com/jsapi?key=ABQIAAAAynKnt9hv30uxjfbUx9X4DBRU8FW8TmMUFf4GF0BysDPVLHB6-RQwlOJobSWKbilPiM4dB6xk_4JbgQ" :type => "text/javascript");
但是,我在我的开发服务器(本地 OS X、WeBRICK)上没有看到这个错误;我看到了(正确渲染的)页面。
这有点令人不安。是否有任何理由在开发时会抑制此编译错误?