【问题标题】:Rails slim syntax errors - config wrong?Rails slim 语法错误 - 配置错误?
【发布时间】:2016-01-20 09:41:40
【问题描述】:

我刚刚在我们的 rails 应用程序中合并了重新设计分支,现在我们使用 slim。每个人似乎都可以正常工作,但是如果我尝试浏览新网站(没有任何代码修改),我会收到如下语法错误:

unexpected ':', expecting keyword_end

这是 slim 文件的 sn-p,上面的错误在最后一行,但我很确定这与文件无关,因为其他开发人员没有问题,生产也没有网站。

#featured-destinations-carousel.carousel.slide data-ride="carousel" data-interval="15000"
  .pagination.hidden-sm.hidden-xs
    = link_to "#featured-destinations-carousel", 'data-slide': 'prev' do

有人告诉我升级到 Ruby 2.2+,我做了(使用 rbenv),但这并没有解决问题。想法?

【问题讨论】:

  • 应该data-slide: 'prev':data-slide => 'prev'
  • @ShabbirAhmed 这些都不行。

标签: ruby-on-rails slim-lang


【解决方案1】:

您的升级未正常运行,Rails 应用仍在使用旧版本的 Ruby。确保您的 rbenv 设置正确(在运行 rails s 之前执行 ruby -vwhich ruby 以帮助调试)并且您的 .ruby-version 文件中包含正确的版本。

【讨论】:

  • ruby -vwhich ruby.ruby-version 都正确指向 2.2.4。但是重新启动后,我终于偶然发现了一个版本问题...rails s/usr/lib64/ruby/2.0.0/rubygems/dependency.rb 中抛出了Gem::LoadError,所以仍然是2.0.0。不知道我是怎么搞砸的以及如何恢复。
  • bundle exec rails s 呢?这看起来像是使用您的系统 gem 而不是 rbenv 包含的那些。 which ruby 应该指向 ~/.rbenv/shims/ruby。您应该仔细检查您的 .bash_profile 是否正确初始化 rbenv(查看自述文件)。
  • 确实,bin/rails 和 bundle exec rails 工作正常。我从 rbenv 转到 rvm,即使 ruby​​ 是 rvm 之一,rails 也是从系统中获取的。我会检查 rvm 文档,谢谢!
【解决方案2】:

你非常接近。只需要将其更改为

= link_to "#featured-destinations-carousel", 'data-slide' => 'prev' do

改为。

【讨论】:

  • 这只是将其更改为 ruby​​
猜你喜欢
  • 1970-01-01
  • 2014-06-17
  • 1970-01-01
  • 2016-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-24
相关资源
最近更新 更多