Ruby on rails 3.1 rake资产:预编译不工作(Rails 3.1.3版)
经过审查,这个问题已被提出,次。但我仍然不明白为什么Ruby on rails 3.1 rake资产:预编译不工作(Rails 3.1.3版),ruby-on-rails-3.1,rake,sass,asset-pipeline,Ruby On Rails 3.1,Rake,Sass,Asset Pipeline,经过审查,这个问题已被提出,次。但我仍然不明白为什么rake资产:预编译失败了 我可以使用本地服务器(如瘦服务器)从浏览器查看以下结果: (注意:图像路径似乎根本不起作用,我正在使用thoughtbot bourbon作为SCSS库) 然而,每次运行precompile时,我都会得到以下(短跟踪): 这表明我更改了production.rb文件,它编译了我的图像,rake现在抱怨我有一个未定义的mixin“border-radius”。也许这是下一个例外,但我不太确定。一切都在本地运行 Rail
rake资产:预编译失败了
我可以使用本地服务器(如瘦服务器)从浏览器查看以下结果:
(注意:图像路径似乎根本不起作用,我正在使用thoughtbot bourbon作为SCSS库)
然而,每次运行precompile时,我都会得到以下(短跟踪):
这表明我更改了production.rb文件,它编译了我的图像,rake现在抱怨我有一个未定义的mixin“border-radius”
。也许这是下一个例外,但我不太确定。一切都在本地运行
Rails指南(3.1.3)明确规定将值设置为true
'uses more memory, performs poorer than the default and is not recommended'
现在我有两个问题。性能降级,我的SCSS库现在有未定义的混合
我想解决由rake资产:precompile
引起的生产部署问题。我的Gemfile资产组如下所示:
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'zurb-foundation'
gem 'bourbon'
end
图像路径帮助器假定路径的图像部分,因此删除该部分(和斜杠),它应该开始工作。如果使用assets:precompile选项,则应该在使用mixin的每个样式表中使用@import
语句
e、 g
假设您在app/assets/stylesheets/partials/_mixins.css.scss
中有一个自定义mixin,您应该添加
@import "partials/mixins";
到该样式表
我知道,is不应该是这样的,但到目前为止,我还没有找到任何其他方法。图像url('file\u name.png')
或图像路径('file\u name.png')
提供所需的结果(资产预编译)文件实际位于的位置(从应用程序开始)预编译在第一个错误时会自动退出。事实上,你得到了一个未定义的mixin,这意味着其他的东西是amis,但我无法用我的生命去解决它。预编译时(在崩溃之前),是否会在public/assets中显示指纹图像文件?该图像在pub/assets中显示指纹。这非常令人沮丧。您可以尝试将.erb添加到文件中,并暂时使用asset_path helper查看是否还有任何错误(线索)。谢谢@joiggama。事实上,我已经用这个计划取代了波旁威士忌。还是不走运你有没有找到解决办法?我不明白为什么在生产中找不到波旁威士忌,我没有。我升级到了3.2.x,它在最新的波旁宝石上运行。
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
gem 'zurb-foundation'
gem 'bourbon'
end
@import "partials/mixins";