exceção jogando HAML na produção, mas não de Desenvolvimento
-
18-09-2019 - |
Pergunta
Eu escrevi este HAML:
%script{:src => "http://www.google.com/jsapi?key=mykey" :type => "text/javascript"}
Observe a vírgula faltando entre: src e:. Tipo
No meu servidor de Produção (Dreamhost / Linux), recebo a seguinte logado exceção quando eu tento visualizar a página:
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");
No entanto, não vejo este erro no meu servidor Desenvolvimento (Local OS X, WEBrick); Eu vejo a página (corretamente-renderizados).
Este é um pouco perturbador. Existe alguma razão que este erro de compilação seria suprimida em desenvolvimento?
Solução
Eu tenho uma correção para esse que eu vou apresentar o mais rapidamente GitHub volta online. Vai ser lançado como parte do Haml 2.2.6, que será enviado para fora algum tempo hoje ou amanhã.
Obrigado pelo relatório do erro!
Editar : Esta é agora fixado em cometer f1a6cc9 .
Editar 2 : Isto já foi lançado como parte do Haml 2.2.6 .
Outras dicas
Bem, isso é confuso. Eu provavelmente não pode ajudá-lo, mas gostaria de sugerir que, se você quiser ver semelhanças mais estreitos com a forma como você desenvolve a sistemas de produção você deve usar um servidor que é considerada produção pronta, e se você puder, o mesmo servidor como o seu produção caixa.