2012-02-24 5 views
1

Я стараюсь ссылаться на изображение в рельсах и его не работает. Я могу ссылаться на assets/file.css, а также на активы/file.js, но assets/file.jpg не работает.Rails изображение неработающая ссылка

Я пробовал новые рельсы нового project_name, и когда я открываю домашнюю страницу, а логотип rails не отображается.

В качестве побочного вопроса,

Как получить рельсы для загрузки только application.js и application.css

Я вижу, что если я удалить? Тела = 1 из URL он сжимает их все в один файл, но когда я просматриваю страницу с помощью следующего кода, они оставляют эти файлы пустыми и включают их один за другим в виде отдельных скриптов.

<%= stylesheet_link_tag "application", :media => "all" %> 
    <%= javascript_include_tag "application" %> 
+0

Что вы получаете в журналах сервера для запросов изображения? – sarnold

+0

какая версия рельсов вы используете, где находится эта папка с ресурсами? – apneadiving

+0

рельсы 3.2.1, app/assets/images – Tallboy

ответ

3

Ok так что это ожидаемое поведение, вы должны использовать Rails хелперы:

<%= image_tag "file.jpg" %> 

Ваши CSS файлы должны быть .erb. Внутри него использовать:

.class { background-image: url(<%= asset_path 'image.png' %>) } 

ссылка является пункт 2.2.1 here.

+0

Что делать, если это в таблице стилей? – Tallboy

+1

Если он находится в таблице стилей, добавьте sass в эту таблицу стилей (если это еще не так) и используйте 'image-url'. –

+0

@Tallboy Я только что отредактировал мой ответ – apneadiving

2

Я только что проверил мой код и мой CSS выглядит следующим образом:

background-image:url(/assets/pinstripes.jpg); 

с изображением загруженного в приложении/активы/изображения, конечно. Это похоже на то, что вы используете, но я не могу точно сказать.

+0

Чтобы автоматически ссылаться на имена хэшированных файлов md5 в процессе производства, вы должны использовать scss и 'image-url'. Раздел 2.2.2: http://guides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets – James

+0

Я не знал, что вы могли бы это сделать, пока я не увижу ответ выше! Меняет мое. – ellawren

Смежные вопросы