0

私はこの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");

ただし、開発サーバー(Local OS X、WeBRICK)ではこのエラーは表示されません。(正しくレンダリングされた)ページが表示されます。

これは少し気がかりです。このコンパイルエラーが開発時に抑制される理由はありますか?

4

2 に答える 2

1

これに対する修正があり、GitHubがオンラインに戻ったらすぐに送信します。Haml 2.2.6の一部としてリリースされ、本日または明日中に送信されます。

バグレポートをありがとう!

編集:これはコミットf1a6cc9で修正されました。

編集2:これはHaml2.2.6の一部としてリリースされました。

于 2009-09-28T00:50:15.463 に答える
0

まあそれは紛らわしいです。おそらくお役に立てないかもしれませんが、本番システムへの開発方法との類似点を詳しく知りたい場合は、本番環境に対応していると見なされるサーバーを使用する必要があります。可能であれば、本番環境と同じサーバーを使用することをお勧めします。箱。

于 2009-09-27T23:21:17.047 に答える