В раздел 2.2.2, "CSS и Sass" , мне сказали положить image-url('delete.png') в мой sass. И поэтому у меня есть.
Однако он генерирует CSS как
background-image: url(/images/delete.png)
вместо того, что мне говорят повсюду, он должен генерировать, правильную и очевидную вещь,
background-image: url(/assets/delete.png)
Что. Черт.
Я провел буквальные дни, пытаясь понять, откуда это происходит.
Здесь суть соответствующих настроек, которые приводят к такому поведению. Здесь суть тех же файлов в более ранней версии нашей базы кода (сразу после того, как мы реализовали конвейер активов и фактически работали около недели до того, как появилось это неприятное поведение). Можете ли вы определить различия? Любые другие файлы, о которых вы можете подумать, могут быть причиной этого?
Примечание
- Мы намеренно используем более старую версию
sass-rails, потому что более новая версия вызывала ошибкиStack level too deep!при предварительной компиляции. - Мы используем Compass.
Два хакерских попытки обходных решений
Потому что на самом деле устранение неполадок с конвейером ресурса отстойно.
1: Поместить изображения в /images
Я попытался просто переместить все изображения в public/images и добавить это как путь загрузки. Это работало в dev (изображения доступны либо в /assets, либо /images), но предварительная компиляция для создания помещает отпечатки пальцев только в /assets (obvs), поэтому, когда sass-rails помещается в url(/imagse/delete-120398471029384102364.png), он может " t.
2: Сделать /public/images символической ссылкой на /public/assets
Это, вероятно, будет работать в процессе производства, но в разработке папка /assets не существует, поэтому директивы url(/images/delete.png) приводят к необоснованным образам.