tôi đã cùng một vấn đề và cũng đã cố gắng để tìm "con đường Rails" để làm điều này. Và đây là những gì tôi đã kết thúc với vào cuối ngày:
Như Rob đã đề cập:
vendor/tài sản là đối với tài sản được sở hữu bởi các đối tượng bên ngoài, chẳng hạn như mã cho JavaScript các plugin và khung công tác CSS.
Nguồn: 2.1 Asset Organization
Hãy lấy một ví dụ thực tế: sử dụng jquery_datepicker
đá quý (Lưu ý: chúng tôi phải sử dụng một cách giải quyết vì vấn đề này: bundle pack does not work with git sources).
1) Cài đặt đá quý (khá straighforward):
cd vendor/gems
git clone https://github.com/albertopq/jquery_datepicker.git
2) Thêm phần này vào Gemfile bạn
gem 'jquery_datepicker', :path => 'vendor/gems/jquery_datepicker'
3) Cài đặt một chủ đề jquery-ui
- Từ ThemeRoller chọn chủ đề, chọn Datepicker và Slider và phiên bản jQUery
- Tải và trích xuất nội dung của gói
- CSS/hình ảnh từ thư mục
css/theme-name
di chuyển chúng:
jquery-ui-1.8.xx.custom.css
để app/vendor/stylesheets/
- các
images
thư mục để app/vendor/images/
(có, di chuyển toàn bộ thư mục images
để bạn kết thúc với một cái gì đó như thế này app/vendor/images/images/ui-icons_256x240.png
- i18n từ thư mục
development-bundle/ui/i18n
(tùy chọn) chuyển chúng đến:
- Tạo một thư mục
i18n
dưới app/vendor/javascripts/
- di chuyển
jquery.ui.datepicker-xx.js
vào thư mục này app/vendor/javascripts/i18n/
- chắc chắn rằng thư mục
i18n
được nạp để đưa vào application.js
//= require_directory ./i18n
vendor/assets
được nạp tự động AFAIK nên bạn không phải bao gồm đường dẫn trong đường dẫn nội dung.
Tôi muốn xem những người khác đang tiếp cận điều này như thế nào, đó là một câu hỏi rất hay.
Điều gì về việc sử dụng '' // = require_tree ./ [plugin_name] '' để yêu cầu tất cả thư mục có plugin? – freemanoid