12

コードキットを使用して少ない書き込みを行い、自動的に css に変換します。

Rails でより少ないファイルを css に変換するのではなく、codekit で行います。

アセットをプリコンパイルする場合

rake assets:precompile

私は得る

rake aborted!
cannot load such file -- less

特定のフォルダー/ファイルの種類をプリコンパイルから除外するにはどうすればよいですか? (すべてのlessファイルはapp/assets/stylesheets/lessにあり、css(プリコンパイルしたい)はapp/assets/stylesheets/cssにあります

アップデート

削除application.lessするとこれは解決しますが、そもそも処理から除外するにはどうすればよいですか?

4

2 に答える 2

20

アセットパイプラインガイドから:

ファイルをコンパイルするためのデフォルトのマッチャーには、application.js、application.css、およびすべての非JS / CSSファイルが含まれます(つまり、.coffeeおよび.scssファイルはJS / CSSにコンパイルされるため、自動的には含まれません)。

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

他のマニフェストまたは個々のスタイルシートとJavaScriptファイルを含める場合は、それらをプリコンパイル配列に追加できます。

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

したがって、あなたの解決策は、ファイルconfig.assets.precompileを除外するように変更することです。.lessたぶんこのようなもの(のような適切な環境ファイルでconfig/environments/production.rb):

config.assets.precompile = [ Proc.new{ |path| !File.extname(path).in?(['.js', '.css', '.less']) }, /application.(css|js)$/ ]
于 2012-10-17T17:15:40.450 に答える
1

app/assets フォルダーの下のディレクトリ構造がそうである場合:

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

次に、application.css ファイルに、*= require_tree .すべてのファイル/ディレクトリをスキャンし、すべてのファイルを 1 つの css ファイルにコンパイルするようにレールに指示するというディレクティブが必要です。

これをに変更すると、コンパイルのためにディレクトリの*= require_directory ./css下のファイルがロードされます。css

于 2012-10-23T12:47:39.477 に答える