2011-11-19 30 views
6

Các tệp js.erb của tôi không được tạo lại ngay cả khi tôi khởi động lại máy chủ phát triển. Có cách nào cho tôi để buộc các đường ống tài sản để tái tạo tất cả các tài sản javascript mỗi khi tôi khởi động lại máy chủ?Lực lượng đường ống nội dung js.erb biên dịch lại

Nếu tôi thay đổi tệp nguồn .js.erb thực thì nó sẽ biên dịch lại tốt, nhưng mã rút từ cơ sở dữ liệu, đọc dữ liệu hạt giống có thể thay đổi giữa các lần khởi động lại máy chủ.

Trả lời

10

Cuộc gọi trễ tại đây, nhưng đã gặp sự cố này khắp nơi, và thực sự khó chịu bởi nó, được đào một chút. Đây là giải pháp của tôi:

On khởi động lại máy chủ của bạn, rm -rf tmp/cache/*

Đó sẽ thổi đi những SCSS và tài sản lưu trữ khác, và buộc một biên dịch lại.

Bạn có thể chạy rake assets:clean để thay thế nếu bạn thích hoặc đang sử dụng Rake để khởi động lại máy chủ của mình.

Rõ ràng, làm điều này máy chủ khởi động lại chậm bởi một chút, nhưng có thể là giá trị nó cho việc loại bỏ các điểm đau lớn này ...

+0

Tốt đẹp! Những công việc này. – spike

1

Hãy suy nghĩ về bất kỳ ruby ​​nào bạn thực thi trong đường ống nội dung như trước khi máy chủ khởi động, vì đó là những gì xảy ra trong sản xuất với bước biên dịch tài sản (và trong quá trình phát triển, nó sẽ làm mới nếu các tệp thay đổi, như bạn ' đã mô tả). Trong trường hợp này, bạn muốn refactor mã đó thành một bộ điều khiển và một cái gì đó trong thư mục app/views của bạn (html.erb/js.erb) để mã của bạn được chạy trên mọi yêu cầu.

+0

Tôi nghĩ rằng bạn đang hiểu sai câu hỏi của tôi. Chúng tôi sẽ khởi động lại máy chủ nếu dữ liệu hạt giống mà JS phụ thuộc vào các thay đổi bao giờ (đó là các công cụ tĩnh như country => ánh xạ trạng thái). Vấn đề của tôi là * ngay cả khi khởi động lại máy chủ * trong dev các JS không được tái tạo. Tôi phải thay đổi tập tin nguồn thực tế (đoán nó đang làm một số loại băm) cho nó để nhặt nó lên. – spike

+0

Vâng - tôi đã bẻ nó ngay bây giờ. Bạn có config.assets.debug được đặt thành true trong env phát triển của mình không? Giả sử đó không phải là bạn có thể kiểm tra https://github.com/wavii/rails-dev-tweaks để biết một số manh mối cho những gì rails đang làm dưới mui xe, mặc dù tôi không nghĩ rằng nó sẽ giải quyết vấn đề của bạn ra khỏi vì nó hướng đến việc biên dịch tài sản ít thường xuyên hơn. –

+0

yea 'config.assets.debug' được đặt, nhờ tài nguyên tôi sẽ thực hiện thêm một số thao tác – spike

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