【发布时间】:2014-07-27 08:51:50
【问题描述】:
我想在 Symfony2 中使用 Compass 和 Assetic 配置 Foundation5,正如他们在 http://foundation.zurb.com/docs/sass.html 所说的那样,我已经安装了 Foundation:
npm install -g bower grunt-cli
gem install foundation
在config.yml已经这样配置了:
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
filters:
compass:
require: ['zurb-foundation']
apply_to: ".(scss|sass)$"
然后我在基本 SCSS 文件 @import "foundation"; 中导入,但是当我运行时:php app/console assetic:dump 我有以下错误:
[Assetic\Exception\FilterException]
An error occurred while running:
'/usr/bin/ruby' '/usr/bin/compass' 'compile' '/tmp' '--images-dir' '/srv/www/vhosts/proj/app/../src/pro/MainB
undle/Resources/public/images' '--config' '/tmp/assetic_compass0NW1Qc' '--sass-dir' '' '--css-dir' '' '/tmp/assetic_compassT
0AFvM.scss'
Error Output:
Output:
create web/sprites/flags-s566f9ef717.png
create web/sprites/flags-s566f9ef717.png
error assetic_compassT0AFvM.scss (Line 7: File to import not found or unreadable: foundation.
Load paths:
/tmp
/usr/share/compass/frameworks/blueprint/stylesheets
/usr/share/compass/frameworks/compass/stylesheets
/srv/www/vhosts/proj/src/pro/MainBundle/Resources/public/css
/srv/www/vhosts/proj/src/pro/CompanyBundle/Resources/public/css
/srv/www/vhosts/proj/web/bundles/pro/css
Compass::SpriteImporter)
create assetic_compassT0AFvM.css
Input:
@import "base";
@import "header";
@import "global";
@import "foundation";
我还看到了升级页面http://foundation.zurb.com/docs/upgrading.html,他们说要更改:
require "zurb-foundation"
到:
add_import_path "bower_components/foundation/scss"
但是无法正常工作,您对如何配置它以使其正常工作有什么建议吗?
配置更改
如果我更改 config.yml 而不是 require 我使用 plugins :
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
filters:
compass:
plugins: ['zurb-foundation']
apply_to: ".(scss|sass)$"
我收到此错误:
[Assetic\Exception\FilterException]
An error occurred while running:
'/usr/bin/ruby' '/usr/bin/compass' 'compile' '/tmp' '--images-dir' '/srv/www/vhosts/proj/app/../src/pro/MainB
undle/Resources/public/images' '--config' '/tmp/assetic_compass0qewOn' '--sass-dir' '' '--css-dir' '' '/tmp/assetic_compassQ
uKtrw.scss'
Error Output:
LoadError on line ["36"] of /usr/lib/ruby/1.9.1/rubygems/custom_require.rb: cannot load such file -- zurb-foundation
Run with --trace to see the full backtrace
Input:
@import "base";
@import "header";
@import "global";
@import "foundation";
【问题讨论】:
-
您确实意识到您正在阅读用于升级 Ruby on Rails 基础的文档,而不是 Symfony?
-
在foundation.zurb.com/docs/upgrading.html 中,有一段
Upgrade manually with Compass并且在第3 步他们说:TELL COMPASS WHERE FOUNDATION RESIDES我认为应该有一个连接,因为Symfony2 使用Compass,这就是我想要配置的。 -
你正在阅读的部分提到
config.rb文件(这是Ruby文件扩展名)和require "zurb-foundation"和add_import_path "..."是绝对有效的ruby语法。 -
指南针需要
config.rb文件才能配置!现在我知道 Compass 的配置是由 Symfony2 中的 Assetic 管理的。所以我只是徘徊在config.yml中放置什么配置,以便与Foundation5 正常工作。 -
我找到了这个答案stackoverflow.com/a/20619652,但按照建议做我有同样的错误:
File to import not found or unreadable: foundation.
标签: symfony zurb-foundation bower assetic compass-sass