Gần đây tôi đã viết một bài đăng blog trên asset pipeline và biết rằng thư mục lib/assets
phải được bao gồm trong danh sách đường dẫn nội dung. Nếu tôi tạo một ứng dụng Rails hoàn toàn mới bằng cách sử dụng 3.2.2, hãy chạy bàn điều khiển và sau đó chạy lệnh y Rails.application.config.assets.paths
Tôi không thấy lib/asset. Không nên bao gồm điều này theo mặc định?Tại sao ứng dụng mới của Rails 3.2.2 không bao gồm lib/asset trong đường dẫn nội dung?
Đây là cách tôi đến đó:
$ rails new example
$ cd example
$ rails c
>> y Rails.application.config.assets.paths
---
- /Users/eberry/Playground/example/app/assets/images
- /Users/eberry/Playground/example/app/assets/javascripts
- /Users/eberry/Playground/example/app/assets/stylesheets
- /Users/eberry/Playground/example/vendor/assets/javascripts
- /Users/eberry/Playground/example/vendor/assets/stylesheets
- /Users/eberry/.rvm/gems/ruby-1.9.2-p290/gems/jquery-rails-2.0.2/vendor/assets/javascripts
- /Users/eberry/.rvm/gems/ruby-1.9.2-p290/gems/coffee-rails-3.2.2/lib/assets/javascripts
=> nil
>>
Bất kỳ trợ giúp sẽ được đánh giá rất nhiều.
Đối với những người quan tâm, [đây là phần có liên quan của hướng dẫn đường ray] (http://guides.rubyonrails.org/asset_pipeline.html#asset-organization). –
có thể là một quyết định thiết kế không? để giữ số lượng đường dẫn ở mức tối thiểu. Có lẽ các nhà thiết kế cảm thấy lib/tài sản sẽ không được sử dụng trừ khi nhà phát triển ứng dụng đặt một số mã của riêng mình vào/lib, vì vậy anh ta phải bật/lib tài sản dựa? lib/vendor có sẵn theo mặc định vì đó là nơi các nhà phát triển gem thường đặt công cụ của họ. Chỉ cần đoán – RadBrad
Mã nguồn trong Rails có thể được tìm thấy tại https://github.com/rails/rails/blob/master/railties/lib/rails/engine.rb#L574. Dường như họ không loại trừ nó. – cavneb