2013-04-15 39 views
6

Tôi đã chạy nhầm rake assets:precompile khi phát triển và Rails đã ngừng tải nội dung đang phát triển. Tôi chỉ nhận được application.jsapplication.css được tải.Đường ray sẽ không tải đường ống nội dung

application.js:

//= require jquery 
//= require jquery_ujs 
//= require_tree . 

application.css:

*= require_self 
*= require_tree . 

Sử dụng Rails 3.2.2

+0

Bạn có thể đăng các tệp 'config/application.rb' và' config/environment/development.rb' không? Điều đó sẽ giúp bạn dễ dàng theo dõi vấn đề của mình hơn. – charleyc

Trả lời

0

Chạy rake assets:precompile tạo tài sản tĩnh dưới public/assets gây Rails để phục vụ những trực tiếp. Để tránh điều này bạn có thể:

  1. tay xóa các tập tin hoặc
  2. Run rake assets:clean
+0

không làm cho nó hoạt động: ( – macool

5

Hãy thử xóa các tài sản tổng hợp từ môi trường phát triển địa phương của bạn:

rm -rf public/assets

Sửa :

Ngoài ra, hãy đảm bảo đặt config.assets.compress = falseconfig.assets.debug = true trong số development.rb của bạn.

+0

không làm cho nó hoạt động: ( – macool

+0

@macool Trợ giúp sửa đổi? –

+0

không, nó cũng không hoạt động. – macool

0

mở config/application.rb và thiết lập như sau:

config.assets.enabled = true

0

Nếu làm sạch thư mục tài sản của mình và đảm bảo cấu hình của bạn là đúng như chỉ định bởi các câu trả lời trước đã không làm việc - là có một khả năng mà bạn đang sử dụng bộ nhớ đệm trang?

Nếu trang được tạo với src thẻ trỏ đến tệp được biên dịch của bạn, chúng sẽ cần phải được tạo lại ngay bây giờ.

+0

Chúng không được tạo bằng thẻ 'src'. Nó cũng không sử dụng bộ đệm trang, Tôi đã thử xóa tất cả bộ nhớ cache. – macool

1

tl; dr

  1. $ rake assets:clean
  2. ray khởi động lại máy chủ $ rails server -e development
  3. cache của trình duyệt rõ ràng, hoặc làm một ctrl+shift+r trên trang ứng dụng

Bây giờ tất cả mọi thứ nên được như trước bạn đã chạy rake assets:precompile

- cuối tl; dr -

Nếu ở trên không hoạt động, sau đó một danh sách chi tiết các bước sau:

  1. Do $ rake assets:clean hoặc $ rm -rf public/assets để loại bỏ các tài sản tạo ra.
  2. Trong ứng dụng.rb, đảm bảo:
    • config.assets.enabled = true (để cho phép pipleline tài sản đường ray)
  3. Trong development.rb, đảm bảo:
    • config.assets.compress = false (để không gzip tài sản)
    • config.assets.debug = true (vì vậy để không hợp nhất tất cả các tệp css và js vào ứng dụng. [cs | js])
    • config.assets.compile = true (hoặc không được đặt - để cho phép biên dịch thời gian của nội dung)
    • config.serve_static_assets = false (hoặc không được thiết lập)
  4. Cuối cùng, khởi động lại đường ray của bạn máy chủ $ rails server -e development

này nên sửa chữa nó.

0

Điều này giúp ích cho bất kỳ ai - tôi gặp sự cố khi không tải app.js/.css đang phát triển (tôi vẫn có thể thấy các dòng hiển thị khi xem nguồn).

Tôi đã chạy một ứng dụng cũ 3.2.2 cho một số lý do tôi phải vào và thêm dòng trống vào cả tệp kê khai (application.js & application.css) và lưu chúng - sau đó phần tử bắt đầu hoạt động bình thường.

Tôi đã xóa các dòng trống và nó vẫn hoạt động vì vậy tôi cho rằng có lẽ nó chỉ cần một dấu ngày tháng mới sửa đổi trên các tệp.

Các vấn đề liên quan