1

テンプレート化された HTML ファイルをホストする Rails セットアップの assets フォルダーに templates ディレクトリがあります。.erb ファイルが添付されている限り、各テンプレートにテキスト スニペットをロードできる部分的なシステムを実装しました。パーシャルにはアンダースコアがプレフィックスとして付けられるため、/assets/templates/_form.html は /assets/templates/edit.html 内に含まれるパーシャルです。これは機能しますが、assets:precompile を実行すると問題が発生します。

assets:precompile コマンドは _form.html ファイルもプリコンパイルします (ファイルは assets/templates フォルダー内にあるため)。行方不明など)。

rake assets:precompile コマンドに特定のファイル (この場合はファイルの前にアンダースコアがあるファイル) を無視するように通知する方法はありますか? 誰かがこれを行う方法を知っていますか? または、rake assets:precompile コマンドのソースがある github リポジトリを教えてもらえますか?

4

1 に答える 1

3

Rails 3.2.8では、rakeタスク定義のソースをここで見つけることができます。

あなたが求めていることは、SprocketsIssueTrackerで少なくとも1回は取り上げられています

joshpeekは、Sprockets 2.2に新しいstubディレクティブを追加しました。これは、パイプラインから特定のアセットを「無視」するための有望なソリューションのように見えます。

Rails 3.2は2.2に近いバージョンのSprocketsをサポートしておらず、私が読んだことから、Rails 4より前にサポートするつもりはないようです(それについては間違っていると思いますが)。2.2へのアップグレードを要求する少なくとも1つのクローズされた問題(アクションは実行されません)があります。

しかし、あなたの状況では、あなたがapp/assets間違って使用している可能性があるように私には思えます。セットアップ/使用法について明確に言うには十分な知識がないため、代替ソリューションを提供することはできませんが、あなたが言ったように、.erbinapp/assets 含むファイルはSprocketsによって処理されます。

于 2012-08-25T05:05:31.423 に答える