答えて
簡単なアプローチはありません。アセットパイプラインは、Rails 2.3にはないRails 3.1.xのいくつかのアーキテクチャに依存しています。
Davis Frank outlines hereというアプローチを試すことができますが、いくつかの手順が必要であることに注意してください。
あなたは資産のソースコードを探している場合:プリコンパイルrakeタスク、あなたがそれをここに見つけることができます:
https://github.com/rails/rails/blob/3-1-stable/actionpack/lib/sprockets/assets.rake
あなたはそれをコピーするとき、それはそのままで実行するように期待しないでくださいスレーブとスプロケット - ヘルパーの宝石とレール2.3.14アプリのあなたのlib /タスク。
[更新]
Iは、(任意のJavaScript圧縮せず)レール2.3.14で使用するための単純なプリコンパイラrakeタスクを作りました。あなたの設定に応じて、いくつかのものを変更したいかもしれません。それはrm_rfコマンド;-)
BUILD_DIR = Rails.root.join("public/assets")
DIGEST = true
namespace :assets do
task :compile => :cleanup do
sprockets = Sprockets::Environment.new
sprockets.append_path 'app/assets/images'
sprockets.append_path 'app/assets/javascripts'
sprockets.append_path 'app/assets/stylesheets'
sprockets.each_logical_path do |logical_path|
if asset = sprockets.find_asset(logical_path)
target_filename = DIGEST ? asset.digest_path : asset.logical_path
prefix, basename = asset.pathname.to_s.split('/')[-2..-1]
FileUtils.mkpath BUILD_DIR.join(prefix)
filename = BUILD_DIR.join(target_filename)
puts "write asset: #{filename}"
asset.write_to(filename)
#asset.write_to("#{filename}.gz") if filename.to_s =~ /\.(css|js)$/
end
end
end
# Cleanup asset directory
task :cleanup do
dirs = Dir.glob(File.join(BUILD_DIR.join("{*}")))
dirs.each do |dir|
puts "removing: #{dir}"
FileUtils.rm_rf dir
end
end
end
使用しているので、慎重にクリーンアップタスクをテストして、[更新#2]
私は今、このアプローチを使用していますし、それが正常に動作します: http://jaredonline.github.io/blog/2012/05/16/sprockets-2-with-rails-2-dot-3/
このレーキタスクの更新はありますか?私はあなたが最後の 'end'を省いたので、これが大きな.rakeファイルのほんの一部であるのか疑問に思っていました。また、どのようにjs/cssの圧縮と縮小を処理するための任意のポインターがありますか? – professormeowingtons
最後の最後はまだそこにある、あなたがスクロールする必要があります、それはウィンドウに収まらない。しかし、私は今このアプローチを使用しており、それはうまくいきます:http://jaredonline.github.io/blog/2012/05/16/sprockets-2-with-rails-2-dot-3/ – Joris
ありがとうJoris - 私は実際にそのソリューションを昨日見つけました。しかし、 'rake assets:precompile'タスクを実行しようとすると、' sprockets.rb'で追加したすべてのパスのすべてのファイルをコンパイルしようとします。何か案は?ここで私の質問を参照してください:http://stackoverflow.com/questions/17730155/sprockets-asset-pipeline-in-rails-2-3 – professormeowingtons
- 1. 資産
- 2. 資産
- 3. 生産現場の資産
- 4. 資産パス
- 5. 資産symfonyの
- 6. 資産混乱
- 7. 資産フォルダ
- 8. 資産プリコンパイルカピストラーノ3.4
- 9. エラー - 資産が
- 10. 資産ライブラリ
- 11. 資産カタログコンパイルエラー
- 12. 資産フォルダ
- 13. エラーコンパイルCSS資産
- 14. Capifony:資産:」エラー
- 15. 資産フォルダ
- 16. 資産パイプライン:admin.cssファイル
- 17. Libgdx資産のバックグラウンドスケーリング
- 18. アクティビティ外の資産
- 19. 指紋プロキシキャッシュ資産
- 20. PHP資産エラーエコーelse
- 21. CUICatalogは、資産パック
- 22. のRails:ExecJS ::資産パイプライン
- 23. ウェブ資産のパッケージマネージャー
- 24. Chromecastはカスタム資産
- 25. 資産はLaravel 5.4
- 26. オープン資産/ sample.xmlに
- 27. iOS - 資産のサイズ
- 28. Railsの資産に
- 29. 資産カタログコンパイラエラーXcode 9
- 30. 2角度資産
Iをまさにこの記事に続きましたが、この仕事をどのように働かせるか説明されていません... – astropanic
それは本当ではありません; 「Rails 3.1はアセットを提供します:デプロイメントプロセスの一部として使用されるプリコンパイル空のRails 3.1アプリケーションを生成してlib/tasksにコピーします。あなたのconfig.ruからSprocketsの設定をコピーします。この仕事。" –
記事に関する質問がある場合、尋ねる最も良い場所は著者自身です:http://pivotallabs.com/users/dwfrank/profile –