11

O zamanlar otomatik css dönüşür hangi az yazmak için codekit kullanın.Hariç dosyaları: raylar içinde ön derleme

ben doğrusu codekit bunu, css benim az dosyalarını dönüştürmek raylar istemiyoruz.

Ben

rake assets:precompile 

yoluyla varlıklarını derleme eğer

rake aborted! 
cannot load such file -- less 

nasıl önderlemeyi dan belirli klasör/dosya türlerini hariç mi olsun? (Hepsi benim az dosyaları app/varlıklar/stil/I) precompiled istediğiniz uygulamayı/varlık/stil/css içindedir hangi (daha az ve css

güncelleme

application.less silme Bu çözer içindedir ama nasıl yaptıklarını ilk etapta işlem dışında tutabilirsiniz

cevap

18

Asset Pipeline rehber Gönderen:?

dosyalarının derlenmesi için varsayılan matcher application.js içerir ap plication.css ve olmayan tüm JS/CSS dosyaları (yani .coffee ve JS/CSS derlemek olarak .scss dosyalar otomatik dahil değildir): Başka manifestoyu varsa

[ Proc.new{ |path| !File.extname(path).in?(['.js', '.css']) }, /application.(css|js)$/ ] 

veya bireysel stil ve JavaScript dosyaları dahil etmek, sen ön derleme diziye ekleyebilirsiniz:

config.assets.precompile += ['admin.js', 'admin.css', 'swfObject.js'] 

Yani, çözümdeğiştirmek olduğunu söyleyebilirim .less dosyalarını hariç tutmak için. (config/environments/production.rb gibi uygun bir ortam dosyasında,) böyle Belki bir şey: app/aktifler klasörü altındaki dizin yapısı böylece

config.assets.precompile = [ Proc.new{ |path| !File.extname(path).in?(['.js', '.css', '.less']) }, /application.(css|js)$/ ] 
+0

Bu işe yaramazsa .. aynı hata –

+1

Bu başarısız olur. Uygulamanıza daha az raylar eklemek, hatayı kaldırabilir, ancak soruda sorduğunuz çözüm değildir. – Kashyap

+0

Tamam düzeltme - Ben production.rb geçirdikten bu herhangi yalnızca paket exec ile .. değil application.rb .. çalışır –

1

ise:

application.css 
/css 
(generated by code kit) 
|...home.css 
|...index.css 
/less 
|...home.less (assuming this is the extension) 
|...index.less 

Ardından, application.css dosyasında Bu raylar tüm dosyaları/dizinleri taramak ve bir css dosyasına tüm dosyaları derlemek için denemek için söyler *= require_tree . yazan bir yönerge olmalıdır.

Bunu *= require_directory ./css olarak değiştirin ve derleme için dosyaları css dizinine yükleyecektir. Raylar `less` dosyalarla ne yapacağını bilmediği için

+0

hala aynı :(onun benim ağaç /css/application.css hazır olduğunu belirtti ve değer/az/application.css alt varlıkları için derlenmiş edileceği içine ana dosya beri application.less –

+0

Ah! O başarısız olur. – Kashyap