2017-07-27 7 views
1

Rails ActionController :: Base.view_pathsに問題があります。マルチテナントアプリケーションを実行し、テナントごとに異なるテーマを許可しています。 view_pathsというテーマはすべてのリクエストでリセットされず、コントローラでprepend_view_pathを使用するたびにスタックされるという問題があります。Rails view_pathsがリクエスト間で共有されています

@paths= 
    [ 
    ... 
    @path="/app/themes/theme2/views", 
    ... 
    @path="/app/themes/theme1/views", 
    ] 

我々はコントローラで

ActionController::Base.prepend_view_path "app/themes/#{Theme.current}/views/" 

を使用しています。

どのリクエストでも、view_pathsを新たに生成するようにレールを強制する方法がありますか?

答えて

0

問題が見つかりました。

サービスクラス(コントローラ外)にApplicationController.rendererを使用しました。 ApplicationController.view_pathsの外部にあるを操作すると、ApplicationControllerはRailsにview_pathを次の要求に渡すように強制しました。

関連する問題