Rails 3.1에서 SASS (Over SCSS)를 기본값으로 사용하는 방법은 무엇입니까?
스타일 시트의 기본값으로 SCSS가 아닌 SASS를 만드는 방법을 찾는 데 어려움을 겪습니다.
sass_config.rb
이 파일을 만들어 보았습니다 .
Sass::Plugin.options[:syntax] = :sass
Sass::Plugin.options[:style] = :compressed
또한 environment.rb 파일에 추가해 보았습니다. 어느 쪽이든이 오류가 발생합니다.
.../config/environment.rb:7:in `<top (required)>':
uninitialized constant Sass::Plugin (NameError)
레일 3.1.rc4의 경우 구성을 설정할 수 있습니다.
config.sass.preferred_syntax = :sass
의 application.rb
파일
다음을 추가했습니다 config/environments/development.rb
.
config.sass.preferred_syntax = :sass
그게 속임수였습니다.
수행 require 'sass/plugin'
하고 있는지 그것은 당신의 후 하단의 확인 Application.initialize!
전화.
나는 확실히 scss보다 sass를 선호합니다- 모든 CSS에 나침반 gem 을 사용하고 preferred_syntax = :sass
config / compass.rb에 추가 하는 것을 고려 했습니까?
아직 레일 3.1에서 이것을 테스트하지는 않았지만 3.0.7에서 작동합니다.
편집하다
문제 해결 단계로 sass_config.rb에서 첫 번째 코드 행만 제거하여 두 번째 코드 만 가지게하면 어떻게됩니까? 이 두 줄이 모두 오류를 유발합니까?
@krainboltgreene가 언급했듯이 다음 줄을 config/application.rb
config.generators.stylesheet_engine = :sass
sass
스타일 시트 생성기의 기본 형식을 만듭니다 . 그러나 Rails 3.1.beta1은이를 지원하지 않으므로 다음과 같은 오류 메시지가 표시됩니다.
$ rails g scaffold user name:string
...
Could not find "scaffold.css.sass" in any of your source paths. Your current source paths are:
.../gems/railties-3.1.0.beta1/lib/rails/generators/rails/scaffold/templates
...
$ rails g controller users
...
Could not find "stylesheet.css.sass" in any of your source paths. Your current source paths are:
.../gems/railties-3.1.0.beta1/lib/rails/generators/rails/assets/templates
보시다시피 생성기를 중단하지 않고는 기본 형식을 변경할 수 없습니다. 대신 scss 파일을 사용하거나 사용하지 않고 정상적으로 작동하는 추가 * .css.sass 파일을 수동으로 만들 수 있습니다.
이 답변을 다른 곳에서 찾았지만 정확히 기억할 수는 없지만 다음과 config/initializers/sass.rb
같이 입력하십시오 .
Sass::Engine::DEFAULT_OPTIONS[:load_paths].tap do |load_paths|
load_paths << "#{Rails.root}/app/assets/stylesheets"
load_paths << "#{Gem.loaded_specs['compass'].full_gem_path}/frameworks/compass/stylesheets"
end
또한 SASS 구문 (SCSS보다)을 선호합니다. mystylesheet.css.sass
대신 파일 이름을 지정 하기 만하면됩니다. 당신은 당신의 이름을 바꿀 수 있습니다 application.css
에를 application.css.sass
, 상단의 의견을 변경 //
하는 대신 /* */
하고 사용 require_*
지침 - 모든 작품을, 그리고 당신은 당신의 응용 프로그램 전역 스타일 시트에 SASS를 사용할 수 있습니다. .NET에서 나침반을 사용하면 그렇지 않습니다 app/stylesheets
.
필요하지 않습니다 Sass::Plugin
. Sprockets를 기반으로하는 새로운 Rails 자산 엔진과 완전히 별개입니다. SASS를 컴파일하는 방법을 이미 알고 있으며 자산 번들링을 적절하게 관리합니다.
새로운 Compass 릴리스가 자산 파이프 라인을 사용하는 Rails 3.1+ 프로젝트에 대해이를 자동으로 수행 할 것이라고 생각합니다.
참고 URL : https://stackoverflow.com/questions/6006360/how-to-make-rails-3-1-use-sass-over-scss-as-the-default
'Nice programing' 카테고리의 다른 글
round () 및 ceil ()이 정수를 반환하지 않는 이유는 무엇입니까? (0) | 2020.12.08 |
---|---|
C #에서 foreach 루프에서 값 형식 인스턴스의 멤버를 수정할 수없는 이유는 무엇입니까? (0) | 2020.12.08 |
new EmptyResult () 반환 VS NULL 반환 (0) | 2020.12.08 |
Chrome, pdf 디스플레이, 서버에서 수신 된 중복 헤더 (0) | 2020.12.08 |
실행중인 클래스의 파일 시스템 경로 가져 오기 (0) | 2020.12.08 |