Trước tiên, trong trường hợp bạn không nhận ra nó: thư mục app/assets/audios
mới của bạn đã có trong đường dẫn tải ... bạn chỉ cần khởi động lại máy chủ của bạn cho Sprockets để nhặt nó lên.
Trong phát triển, nội dung có sẵn tại url tương đối: /assets/<asset file name>
. Ví dụ: giả sử tệp wav của bạn nằm ở số /app/assets/audios/audio_file.wav
trong hệ thống tệp, nó có thể truy cập được tại url tương đối /assets/audio_file.wav
trong trình duyệt. Điều này là do Sprockets/Dev-Rails biết tìm kiếm thư mục /app/assets
và các thư mục con của nó khi định vị tài sản.
Trong sản xuất, việc biên dịch tài sản (thường) xảy ra khi triển khai. Tại thời điểm này, tệp wav của bạn được sao chép sang ví dụ: /public/assets/audio_file-<MD5 fingerprint>.wav
và có thể truy cập tại url tương đối: /assets/audio_file-<MD5 fingerprint>.wav
.
Vì các kiểu đặt tên khác nhau được sử dụng giữa phát triển và sản xuất, bất cứ lúc nào bạn muốn tham chiếu đến nội dung, bạn nên sử dụng phương thức trợ giúp (ngay cả trong CSS!). Đó là, sản xuất bao gồm dấu vân tay MD5, trong khi phát triển thì không. Nhưng bạn không cần phải lo lắng về bất cứ rằng chừng nào bạn sử dụng một helper:
- Đối với hình ảnh:
<%= image_tag('homes/logo.png') %>
- đưa ra một tập tin hình ảnh sống trong /app/assets/images/homes/logo.png
trên hệ thống tập tin.
- Đối với nội dung không chuẩn, chẳng hạn như tệp âm thanh:
<%= asset_path('audio_file.wav') %>
, sẽ tạo ra đường dẫn tương đối là /assets/audio_file.wav
.