Slim SyntaxError

时间:2012-03-21 06:14:25

标签: ruby-on-rails slim-lang

我决定尝试使用slim模板引擎,但我有一些奇怪的错误。

ActionView::Template::Error (Unknown line indicator
  app/views/layouts/application.html.slim, Line 1
    <!DOCTYPE html>
    ^
):
  slim (1.1.1) lib/slim/parser.rb:448:in `syntax_error!'

它出现在所有页面上。例如:

Started GET "/" for 127.0.0.1 at 2012-03-21 09:47:49 +0400
Processing by AuthenticationsController#index as HTML
  Authentication Load (0.9ms)  SELECT "authentications".* FROM "authentications" 
  User Load (1.0ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 17 LIMIT 1
  CACHE (0.0ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 17 LIMIT 1
  Rendered authentications/index.html.slim within layouts/application (88.4ms)

我的Gemfile中有gem 'slim-rails'

视图/认证/ index.html.slim:

table
  tr
    th User
    th Provider
    th Uid
  - for authentication in @authentications
    tr
      td = authentication.user_id
      td = authentication.provider
      td = authentication.uid
      td = link_to "Destroy", authentication, :confirm => 'Are you sure?', :method => :delete

视图/布局/ application.html.slim:

doctype 5
html
  head
    title gttc
    = stylesheet_link_tag    "application", :media => "all"
    = javascript_include_tag "application"
    = csrf_meta_tags
  body
    p hi!
    = yield 

我无法弄清楚这个错误的原因。似乎瘦的解析器试图解析已生成的html。但为什么?我的错误在哪里?

1 个答案:

答案 0 :(得分:2)

问题解决了。当我重新启动我的IDE(RubyMine)时,我看到,由于某种原因,文件.html.slim包含来自旧.html.erb的文本。所以也许这只是rubymine中的某种错误。