Rails 3.1-Asset-URLs in SCSS-Dateien scheinen die Assets nicht korrekt zu referenzieren.

Ich habe gerade ein Upgrade von Rails 3.0 auf Rails 3.1 durchgeführt.

Ich habe einfoo.css.scss -Datei, die auf ein Bild verweist /app/assets/images/foo.png) wie folgt

.foo {
  background-image: image-url('foo.png');
}

Das Problem ist, dass meinfoo.pngie @ -Datei wird nicht geladen und in meinen Protokollen werden 404-Fehler angezeigt. Der tatsächlich generierte CSS-Eintrag lautet:

background-image: url(/images/foo.png);

was ist falsch (?) weil das Bild unter @ zu finden i/assets/foo.png und nicht bei/images/foo.png.

Hinweis, an dem ich noch arbeitedevelopment mode.

Ein weiterer wichtiger Hinweis. Wenn ich mein @ umbenenfoo.css.scss file tofoo.css.erb und benutze:

background-image: url(<%= image_path('foo.png') %>);

es funktioniert ok, weil es @ erzeu/assets/foo.png.

So ist die Frage, warum meinscss Precompiler generiert nicht das richtigecss?

Aktualisiere: meinfoo.css.scss Datei befindet sich:

app/assets/stylesheets/sub_dir/foo.css.scss

Macht das einen Unterschied?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage