2017-04-05 5 views
0

私はPhalcon PHPモジュラーアプリケーションを持っています。私はシステム内でどのモジュールを使うべきかを管理するための管理インターフェースを作っています。 1つのモジュールはアプリケーションのデフォルトインターフェイスを制御し、他のモジュールは機能を追加します。2つ以上のモジュールのビュー間でマージを実行します

私は問題があります:別のモジュールを有効にすると、他のインターフェイスコントロールモジュールにHTMLコンテンツを追加できます。このようにして、私は2つ以上のビューをマージしたいと思います。私はテンプレートエンジンとしてVoltを使用しています。

これはPhalconでも可能ですか?

答えて

1

注:。これは、公式Phalconフォーラムに頼まれました。私はそこにそれに答え、それは受け入れられた。私は将来の読者がStackOverflowからリダイレクトせずにここで答えを得ることができるように私の答えをミラーリングしています。 Phalconフォーラムミラー:https://forum.phalconphp.com/discussion/15891/perform-merge-between-views-of-two-or-more-modules


config.phpの

あなたがそうのようなapp/config/config.phpファイルにあなたのモジュールを定義する必要があります。

return new \Phalcon\Config([ 
// ... 
    'modules' => [ 
     'module01', 
     'module02', 
     ... 
     'moduleN', 
    ], 
// ... 
]); 

* Controller.php

次に、あなたのコントローラでは、あなたはそうのようなアクティブなモジュールを格納するためのビューのプロパティを設定すると思います。あなたのボルトのファイルで

$this->view->modules_enabled = $this->di->get("config")->modules; 

* .volt

そして最後に、単にモジュールをチェックし、アクティブモジュールを保持する配列であり、もしそうなら、partialsを使用してビューを表示します。

{% if module01 in modules_enabled %} 
    <div id="module">{{ partial("partials/module01") }}</div> 
{% endif %} 
関連する問題