CDN & Heroku: Фоновите изображения не се показват

В моето приложение Heroku rails. Следвам тази инструкция и внедрих CDN. https://devcenter.heroku.com/articles/cdn-asset-host-rails31#configuration

Работи почти правилно, но фоновото изображение, което написах във файла css.scss.erb, не се показва. Моите файлове и проблемът са по-долу.

custom.css.scss.erb

.ap-sidebar .ap-nav li a span { 
   background: transparent url(asset-path('nav_arrows.png', image)) no-repeat 0 50%;
}

постановка.рб

config.action_controller.asset_host = "//#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"

Изходният url трябва да бъде: staging-bucket.s3.amazonaws.com/assets/nav_arrows-digest.png

но наистина резултатът е като по-долу: .s3.amazonaws.com/assets/nav_arrows-digest.png

Промених asset-path на asset-url, но не проработи. Как мога да поправя това?


person Atsuhiro Teshima    schedule 19.09.2012    source източник


Отговори (2)


Две неща, които трябва да проверите:

  • Променливата на средата ENV['FOG_DIRECTORY'] може да е нула. Можете да проверите променливите env с командата:

    heroku config --app

Повече подробности: https://devcenter.heroku.com/articles/config-vars

  • Режимът на вашето приложение, работещо на Heroku. По подразбиране приложението ви ще работи в производствен режим, докато конфигурирате за етапен режим. Можете да промените режима, като следвате тази статия: https://devcenter.heroku.com/articles/multiple-environments
person Blue Smith    schedule 20.09.2012
comment
ENV['FOG_DIRECTORY'] работи за други изображения. Само фоновото изображение, което написах в CSS файла, не се показва. - person Atsuhiro Teshima; 20.09.2012
comment
Опитахте ли background: transparent url(‹%= asset_path('nav_arrows.png') %›) ? - person Blue Smith; 20.09.2012

Намерих начин да реша това.

просто променете това:

.ap-sidebar .ap-nav li a span { 
   background: transparent url(asset-path('nav_arrows.png', image)) no-repeat 0 50%;
}

до това:

.ap-sidebar .ap-nav li a span { 
   background: transparent url('nav_arrows.png') no-repeat 0 50%;
}

css.scss.erb не работи, така че също пропускам erb от файла.

person Atsuhiro Teshima    schedule 14.03.2013