Heroku上的语法错误在线不存在

时间:2012-11-02 07:15:50

标签: ruby-on-rails-3 heroku

我有一个带有Haml视图的Rails应用程序,可以在本地运行,也可以在另一台主机上运行。但是在部署到Heroku之后,第一个请求会出错,请参见下面的日志:

Started GET "/" for 88.159.5.1 at 2012-11-02 07:03:56 +0000
- - Processing by SessionsController#new as HTML
- - Rendered sessions/new.html.haml within layouts/application (403.5ms)
- - Completed 500 Internal Server Error in 497ms
- - ActionView::Template::Error (syntax error on line 18, col 4: `all:  all'):                                      
- -     1: .sixteen.columns
- -     2:   #loginblock
- -     3:     .content_title.general
- -     4:     %h2= I18n.t :login_title
- -     5:     .content
- -     6:       = render("layouts/message")
- -     7:       = form_tag(sessions_path, :class => 'form') do
- -   app/views/sessions/new.html.haml:4:in `_app_views_sessions_new_html_haml___1472882735787050115_50827800'

奇怪的是:在该视图中不存在第18行,它只有17行。在第4行,我没有看到任何错误?可能与Haml或Haml gem无法正常工作有关?请参阅下面的视图文件。感谢您的任何意见!

.sixteen.columns
  #loginblock
    .content_title.general
    %h2= I18n.t :login_title
    .content
      = render("layouts/message")
      = form_tag(sessions_path, :class => 'form') do
        .field
          = label_tag I18n.t :form_email
          = text_field_tag :email
        .field
          = label_tag I18n.t :form_password
          = password_field_tag :password
        .field
          = submit_tag I18n.t(:login_title), :class => 'button white'
        .clear

1 个答案:

答案 0 :(得分:0)

找到它:yaml文件中的缩进是4个空格而不是2个,所以级别太深了。由于某种原因,我的本地Rails设置接受此,但Heroku rails设置不接受。因此,在纠正缩进后,Heroku上的一切都很好。