cor*_*ded 35 ruby-on-rails-3.1 compass-sass
我搜索和搜索,所有我能看到的是使用指南针轨道3.1只是编辑Gemfile如下:
gem 'compass', :git => 'https://github.com/chriseppstein/compass.git', :branch => 'rails31'
gem 'sass-rails', "~> 3.1.0.rc"
Run Code Online (Sandbox Code Playgroud)
是的,我明白了,但下一步是什么?我看到的每个教程都说,使用那个特定的分叉.但是我仍然无法使用带有rails 3.1的罗盘.
我这样做了:
$ compass init rails . --syntax sass
directory ./app/stylesheets/
create ./config/compass.rb
create ./app/stylesheets/screen.sass
create ./app/stylesheets/print.sass
create ./app/stylesheets/ie.sass
Run Code Online (Sandbox Code Playgroud)
由于3.1现在正在使用资产,我只是将所有这些文件转移到3.1.另外,我使用的是指南针-960插件,我在哪里需要它?我尝试添加一个需要960的compass.rb并需要html5样板,我仍然会收到错误:
Error compiling asset application.css:
NoMethodError: undefined method `Error' for Compass:Module
(in /Users/eumir/rails_apps/kiseki/app/assets/stylesheets/screen.sass)
NoMethodError (undefined method `Error' for Compass:Module
(in /Users/eumir/rails_apps/kiseki/app/assets/stylesheets/screen.sass)):
Run Code Online (Sandbox Code Playgroud)
我尝试做罗盘编译,它给了我这个:
$ compass compile无需编译.如果您正在尝试启动一个新项目,那么您已经离开了目录参数.运行"compass -h"获取帮助.
正如我所说,我已经编辑了我的compass.rb所以我仍然难以理解如何解决这个问题.有帮助吗?
Dan*_*l R 33
更新:似乎有更好的方法!
资料来源:http://spin.atomicobject.com/2011/07/12/sass-sprockets-compass-with-rails-3-1/
更新2(2011年12月2日):Compass的创建者Chris Eppstein发布了关于如何将Compass与Rails 3.1集成的Github Gist:https://gist.github.com/1184843
我现在更喜欢这种方法,因为我注意到在使用livereload时编译时的速度有了很大的提升.
我的方法:(
我现在认为它已被弃用,但在某些情况下可能会有用,所以这里仅供参考:)
首先,在您的Gemfile中,添加:
gem "compass", "~> 0.12.alpha.0"
Run Code Online (Sandbox Code Playgroud)
并且不要忘记执行一个
bundle update
Run Code Online (Sandbox Code Playgroud)
然后,在config/application.rb中:
config.generators.stylesheet_engine = :sass
Run Code Online (Sandbox Code Playgroud)
将application.css.scss重命名为application.css.sass,或者创建它,并将其内容替换为:
@import compass
@import _blueprint
Run Code Online (Sandbox Code Playgroud)
(如果你想在样式表的开头保留新的Rails 3.1清单代码,你必须在每行的开头用'sa*语法版本'//'替换'/**/'注释)
现在,要测试指南针和蓝图mixin是否有效,请将一些代码添加到同一文件application.css.sass:
@import compass
@import _blueprint
body
background: black
+linear-gradient(color-stops(white, black))
+column(5)
Run Code Online (Sandbox Code Playgroud)
运行rails服务器
bundle exec rails server
Run Code Online (Sandbox Code Playgroud)
在浏览器中加载您的应用程序,并访问http:// localhost:3000/assets/application.css
如果一切顺利,您应该看到编译的代码.
资源:
http://blog.pixarea.com/2011/07/using-compass-blueprint-semantic-and-sass-syntax-in-rails-3-1/
其他答案中的解决方案已弃用最新版本的Compass,v0.12,这需要适配器才能使用rails应用程序.Compass的作者Chris Eppstein已经在github上安装了安装说明:
https
://github.com/compass/compass-rails
此适配器支持rails 2.3及更高版本
| 归档时间: |
|
| 查看次数: |
22009 次 |
| 最近记录: |