在添加代码以预编译图像资产后,在rails s之后出现错误?

时间:2014-09-02 03:14:02

标签: ruby-on-rails ruby ruby-on-rails-4

我刚刚在这个问题上修复了图像资产编译问题 - > Why is this code rendering a background image on all of my pages, instead of just my index action?

现在我在启动rails服务器时收到以下错误消息??

config/initializers/assets.rb:9: syntax error, unexpected tXSTRING_BEG, expecting end-of-input (SyntaxError)

我无法在互联网上的任何地方找到解决方法。谢谢。 initializers / assets.rb:

Rails.application.config.assets.version = '1.0'

Rails.application.config.assets.precompile += %w( background.css )` to ` config/initializers/assets.rb

1 个答案:

答案 0 :(得分:1)

确实存在语法错误。

Rails.application.config.assets.precompile += %w( background.css )` to ` config/initializers/assets.rb

%w()是一种将字符串数组指定为单词的方法。由()和空格分隔的任何元素都被视为一个单独的数组元素。

`to`是Ruby在您的错误消息中调用XSTRING的内容,它是可执行字符串:它在您的操作系统中作为命令to运行并将其输出作为字符串返回。但不是在这种情况下。 Ruby不希望它是在数组之后编写的,并且不清楚如何处理它。这正是错误信息所说的。由于代码不清楚,Ruby停止了。

最后一件事:在大多数情况下,字符串应包含在"'中。然而,这些是不同的。双引号允许字符串插值"thi#{5.0.to_i}"等结构),而单引号则不允许。