Rails 3 アプリケーション用のシンプルなテーマ システムを作成しています。Rails.root
テーマは、 /themesに配置されたフォルダーで構成されます。
- .yml マニフェスト ファイル
- いくつかの液体テンプレート ファイル
- 静的アセットのサブフォルダー
特定のコントローラー/アクションについて、現在のテーマからビューをレンダリングしたいので、それに応じて静的アセットを使用します。
したがって、レールに書き直すように指示する方法が必要です
http://example.com/theme1/* ----> #{Rails.root}/themes/theme1/assets/*
http://example.com/theme2/* ----> #{Rails.root}/themes/theme2/assets/*
- ...
現在、テーマごとに異なるエンジンを使用したり、のサブフォルダーにアセットファイルをコピーしたりすることを避けたいため、これを行う方法がわかりませんpublic
。
どうすればこの問題を解決できますか?
編集:その他の要件
私は、Rails のデフォルトを混乱させないものを探していました。これにより、後で新しいアセット パイプライン機能 (Rails 3.1 用に計画されています) を利用することができます。
現在、私はこれだけを見つけました:
config.asset_path = proc { |asset_path| "assets/#{asset_path}" }
残念ながら、アセット パイプラインが有効になっている場合は適用されません。