2011-09-11 1 views
0

방금 ​​레일 앱을 3.1로 업그레이드했으며 새 애셋 파이프 라인을 사용하고 있습니다. 파이프 라인을 사용하면 응용 프로그램에서 정적 참조가 레일스 도우미 메서드 (예 : asset_path (...), img_tag() 등을 사용하는 것이 필수적입니다 ...Rails 3.1 앱에서 CSS의 이미지 참조를 처리하는 방법

어떻게해야합니까? 내 CSS 파일에 정적 참조를 수정?

.page { 
    background: #eee image-url('somefile.png'); 
} 

레일 모든 자산 이미지 디렉토리에서 해당 파일을 찾을 것 같은 app/assets/images/somefile.png :

답변

2

에서 레일 'SASS 파일은 당신과 같이 사용할 수있는 image-url() 기능이있다.

readme for sass-rails에서 더 많은 도우미 메서드를 확인하고 Asset Pipeline Rails guide에서 자세한 설명서 및 설명을 확인하십시오.

+0

감사합니다. Chris 님, 답변이 맞는 것 같습니다. 레일즈 3.1과 SCSS를 처음 사용하기 때문에 내 지식 부족을 용서하십시오. 나는 css 파일의 ext 파일을 .css.scss로 변경 한 다음 레이크 (rake) 자산을 실행했다 : 프리 컴파일했지만 내 그림 중 하나가 미리 컴파일되지 않았다는 것을 알리는 오류 메시지가 나타났다. 더 이상의 힌트? 다시 한번 감사드립니다. – Bnjmn

+0

나는 그것에 대해서도 상당히 익숙하다. 그래서 나는 그 오류를 일으키는 것에 대해서만 추측 할 수있다. 내 생각 엔'images-url()'이미지 (scss 파일에서 참조)가'assets/images' 디렉토리 (또는 서브 디렉토리)에 없으면 그 오류가 발생합니다. 그래도. – Chris

+0

답장을 보내 주셔서 감사합니다. 자산/이미지 폴더에 사진이 있습니다. 이전에 언급 했어야합니다. – Bnjmn

0

엔진 또는 플러그인에서 작업하는 경우 작동하지 않을 수 있습니다. 항상 일반적인 방법을 사용할 수 있습니다.

asset-url("rails.png", image)