Я пытаюсь воспроизвести основы конвейера ресурсов, представленного в rails 3.1, в моем приложении rails 3.0 .
Пока что у меня есть что-то вроде этого: https://gist.github.com/1112393.
Прекрасно работает:
- У меня есть свои активы в приложении / assets /, lib / assets, vendor / assets ...
- Они всеслужил в / assets
- Я могу использовать все, что предлагает звездочка 2 и т. д. ...
Дело в том, что я не хочу, чтобы приложение rails обслуживало статические активы.Сервер должен это сделать.Вот почему вы можете прекомпилировать ресурсы в rails 3.1, если я правильно понял.Итак, я сделал задачу rake, которая делает именно это (используя метод прекомпиляции Sprockets :: Environment).И это работает, у меня есть все мои активы по адресу /public/assets/.
Например, у меня есть
- application-02f8c96b342b4569513d0edf39ef55eb.css
- application-505e8f472350fb1e2f566106156.js
- gallery-icons-0e922050a85718fef3cd570df4eb5845.png
Но в rails 3.1 вы можете сделать что-то подобное в вашем style.css.scss.erb
background: url(<%= asset_path("gallery-icons.png") %>)
и вы получите
background: url(/assets/gallery-icons-0e922050a85718fef3cd570df4eb5845.png)
в предварительно скомпилированном файле.
То же самое для stylesheet_link_tag, javascript_link_tag, которые перезаписываются в rails 3.1 для добавления хэша, если я не ошибаюсь.
Как я могу это сделать?
Дайте мне все идеи, которые вы можете иметь!Спасибо.