一方で、マウント可能なエンジンがあります。フロント フロントには私の資産とページのカップルが含まれています MainAppから隔離されています。私はそれがメインアプリに触れないようにしたい。rails prepend_view_pathマウント可能なエンジン
一方、私はMainAppがレイアウトとFrontの一部を使って欲しいです。 だから私のセットアップレイアウトこの方法:
class ApplicationController < ActionController::Base
layout 'front/application'
end
しかし、フロント/アプリケーションが原因で隔離のため、直接部分エンジンを参照して、だから、この
render 'header' # front/ prefix is not required
ようMainAppにビューがアプリ/ビューをロードしよう代わりに、アプリ/ビュー/フロント/アプリケーション/ヘッダの/アプリケーション/ヘッダ
これをFIXEするために、私はこのようなprepend_view_pathを置く:
class ApplicationController < ActionController::Base
layout 'front/application'
before_filter :prepend_front
protected
def prepend_front
prepend_view_path "app/views/front"
end
end
エンジンパスがベンダーを指しているため、これは機能しません。 エンジンが先頭に追加パスリストに自己これを追加します。〜/ main_app /ベンダー/ private_gems /フロント-0.0.2 /アプリ/ビュー そして、私のpreprend_front方法は、これを作成します。フロント〜/ main_app /アプリ/ビュー/
は私が力で正しいパスを付加するためにしようと試みた(しかし、それはとても汚れて見えます):私は動作しません
prepend_view_path "#{Rails.root}/vendor/private_gems/front-0.0.2/app/views/front"
、ちょうど
...アプリをクラッシュそして、私はここにこだわっています。多分私のデザインは間違っていますか?
確かに良い洞察。ありがとう;) – ProxyGear