非常罕见的haml错误

时间:2011-08-11 19:14:29

标签: ruby-on-rails passenger haml capistrano sass

我目前正在尝试在生产服务器上部署Ruby on Rails 3.0.9应用程序。一切似乎都很顺利,直到乘客给出'我们很抱歉,但出了点问题。'请求网站时出错。

生产日志显示以下错误:

  

在布局/应用程序(5.7ms)内呈现了sessions / new.html.haml

     

在8毫秒内完成500内部服务器错误

     

ActionView :: Template :: Error(第7行语法错误,第7栏:`'):

     

2:%h2登录   3:= form_for(:sessions,:url => sessions_path)do | f |

     

4:.field

     

5:= f.label:电子邮件

     

6:%br /

     

7:= f.text_field:email

     

8:.field

     

应用程序/视图/会话/ new.html.haml:5:在
  _app_views_sessions_new_html_haml__1068828667_250539460_0' app/views/sessions/new.html.haml:3:in _ app_views_sessions_new_html_haml__1068828667_250539460_0'

* 编辑:删除f.label:email和f.label:密码行会使此错误消失,但这显然不是修复*

有关此错误的一些信息:

  • 我在windows上用aptana开发
  • 在Mac上使用这个项目的联合开发人员不久前会受到这个错误的影响,但是用gemsets和rvm修复了一些未知的魔法。
  • 生产服务器的捆绑列表:http://pastie.org/private/0itpfmbfwqvhpheptqz4ha
  • Github存储库:http://github.com/boersmamarcel/Into-Reality-Portal
  • 我正在部署capistrano 2.0及其捆绑配方
  • 在其他视图上也会发生类似的错误,但不知何故此错误也指向文件的第7行,错误消息有时会显示随机字符串
      

    col 7:

  •   
  • 我无法管理生产服务器上的全局gemset
  •   
  • 奇怪的事实:如果我删除了= f.label:password和= f.label:email行,错误就消失了:s
  •   

如果有人可以帮助我,我会非常感激。我们一整天都在研究这个错误,这让我疯狂。

由于 - Bas


编辑:f.label函数似乎导致了问题。我上传了一个精简版的视图,它生成了以下错误: http://pastie.org/private/cqqipdvqod3r50x9ciwytq 此应用程序在其他基于mac和基于Windows的计算机上成功运行。

2 个答案:

答案 0 :(得分:1)

如果您完全复制了上述内容,那么使用尾部斜杠的%br是多少?如果您在HTML(而不是XHTML)中将其删除,则尾部斜杠不再有效。我不知道这是否重要,但有时斜线角色会以奇怪的方式抛弃HAML。

答案 1 :(得分:0)

在对这个错误感到困惑数小时之后,事实证明I18n宝石造成了这个问题。 我的en.yml中有一个未闭合的实体,看起来像这样:

en:
  time:
    formats:
      hourminute: "%H:%M"
  date:

删除date:部分修复此问题 - 在我看来 - 非常模糊的错误

感谢所有在这个问题上使用他们的脑筋的人:)!