17

Phiên bản phát hành của Rails 3.1 có một số vấn đề lạ với biên dịch trước tệp kê khai sass với phần mở rộng scss. Điều kỳ lạ là tệp kê khai mặc định application.scss biên dịch tốt và tôi thấy nó dưới public/assets/.Biên dịch tệp kê khai .scss bằng cách sử dụng đường dẫn nội dung của Rails 3.1

Tuy nhiên, khi tôi cố gắng biên dịch tệp kê khai tùy chỉnh của mình, không có gì được tạo. Tôi đã bật tùy chọn biên dịch trước trong cấu hình sản xuất.

config.assets.precompile += %w(user.scss admin.scss) 

Tôi đang chạy tác vụ cào biên dịch chính xác như tôi biết.

rake assets:precompile RAILS_ENV=production 

Và điều này có thể hữu ích. Khi tôi tạo hai tệp kê khai mới có phần mở rộng css thay vì scss và yêu cầu tệp scss gốc trong đó, thì các tệp kê khai mới này được vinh danh và được biên dịch chính xác. Tại sao application.scss nhận được điều trị đặc biệt này chứ không phải các tệp kê khai sass khác?

+0

Câu hỏi hay, tôi muốn câu trả lời. – Andrew

+0

bất kỳ lý do nào không chấp nhận câu trả lời dưới đây? – tee

+0

Không thực sự, chỉ là tôi đã không thử nghiệm giải pháp của bạn kể từ khi tôi đã chuyển sang những thứ khác. – Anurag

Trả lời

27

Bao gồm biên soạn tên tập tin trong danh sách tiền biên dịch của bạn:

config.assets.precompile += %w(user.css admin.css) 

Ngoài ra, bạn có thể muốn để đổi tên các tập tin gốc trong app/assets/stylesheets bao gồm phần mở rộng biên soạn trong tên tệp gốc do đó, nó rõ ràng những gì đang xảy ra trên:

user.scss -> user.css.scss 
admin.scss -> admin.css.scss 
+0

Công việc tốt! Cảm ơn – abhijit

-2

Tôi nghi ngờ đó có thể là lỗi.

Tệp application được coi là tệp chính cho dự án mặc định. Kết thúc bằng .css và .js được bao gồm trong danh sách biên dịch trước theo mặc định.

Hành vi bạn mô tả (tệp kê khai có đuôi .css) là đúng.

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