2012-02-11 26 views
5

Tôi đang tạo dự án đường ray 3.2 mới và mọi thứ đang tải tốt ngoại trừ những sửa đổi cuối cùng tôi đã thực hiện trên tệp css.đường ray 3.2 và sửa đổi trên tệp css không phản ánh cho đến khi nội dung: biên dịch trước

Nếu tôi làm app/assets/stylesheets/application.css thay đổi bất cứ điều gì trong hồ sơ này, tôi không thể nhìn thấy những thay đổi trên trình duyệt cho đến khi tôi chạy lệnh sau tại giao diện điều khiển:

bundle exec rake assets:precompile RAILS_ENV=development

tập tin config/environment/development.rb tôi.

Sample::Application.configure do 
    # Settings specified here will take precedence over those in config/application.rb 

    # In the development environment your application's code is reloaded on 
    # every request. This slows down response time but is perfect for development 
    # since you don't have to restart the web server when you make code changes. 
    config.cache_classes = false 

    # Log error messages when you accidentally call methods on nil. 
    config.whiny_nils = true 

    # Show full error reports and disable caching 
    config.consider_all_requests_local  = true 
    config.action_controller.perform_caching = false 

    # Don't care if the mailer can't send 
    config.action_mailer.raise_delivery_errors = false 

    # Print deprecation notices to the Rails logger 
    config.active_support.deprecation = :log 

    # Only use best-standards-support built into browsers 
    config.action_dispatch.best_standards_support = :builtin 

    # Raise exception on mass assignment protection for Active Record models 
    config.active_record.mass_assignment_sanitizer = :strict 

    # Log the query plan for queries taking more than this (works 
    # with SQLite, MySQL, and PostgreSQL) 
    config.active_record.auto_explain_threshold_in_seconds = 0.5 

    # Do not compress assets 
    config.assets.compress = false 

    # Expands the lines which load the assets 
    config.assets.debug = true 
end 

Bất kỳ trợ giúp nào?

+0

Bạn có bắt đầu máy chủ của mình ở chế độ phát triển hoặc trong sản xuất không? Bạn có sử dụng cùng một cổng đôi khi để phát triển, đôi khi để sản xuất? Bạn đã làm điều đó trước đây chưa, để biên dịch trước tài sản? Tôi đã nhận thấy một hành vi tương tự, và bây giờ có 2 repos, một cho phát triển và một cho sản xuất để tránh tình trạng đó. – mliebelt

+0

@mliebelt chỉ hoạt động ở chế độ phát triển –

+0

Có trợ giúp gì nếu bạn dừng và khởi động lại máy chủ để xem các thay đổi của mình không? Chưa bao giờ có hiệu ứng này ... Bạn có thể thêm cấu hình 'config/environment/development.rb' có liên quan đến nội dung không? – mliebelt

Trả lời

15

Vấn đề là tôi đã biên soạn nội dung, vì vậy các đường ray đang phục vụ phiên bản đã biên dịch của các tệp này.

Trong trường hợp này, tất cả những gì bạn phải làm là chỉ cần xóa các tệp đã tạo, như application.cssapplication.css.gz và bạn cũng làm cho nó hoạt động trở lại.

Hy vọng nó sẽ giúp ai đó.

+0

Tôi nhận thấy như vậy và bây giờ đã chia phát triển và sản xuất: phát triển mà không có các tập tin biên dịch trước, sản xuất với 'tài sản: biên dịch trước '. Tôi nghĩ đó là lỗi, xem câu hỏi của tôi http://stackoverflow.com/questions/9140447/best-deployment-strategy-for-local-used-application-in-rails-3-1-on-windows-7 – mliebelt

1

Chạy bó exec rake assets:clean giải quyết được sự cố. Ngoài ra, nếu bạn muốn xóa các tệp này theo cách thủ công, chúng xuất hiện trong thư mục công cộng của ứng dụng bên trong nội dung.

+0

Cảm ơn bạn đã chia sẻ điều này. Cảm ơn bạn! :) –

1

Đây là loại cũ, nhưng tôi thấy rằng đôi khi một rake assets:clean sẽ không xử lý nó trong Rails 4.2.1. Đôi khi, bạn cần phải sử dụng một động từ mạnh hơn như clobber: rake assets:clobber

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