2

ビューを「深い」方法で埋め込みたい:

index.php:

<html>
  <body>
    <?= contents_of('page') ?>
  </body>
</html>

page.php:

<div><?= contents_of('section') ?></div>

section.php:

<span>Hello</span>

それは出力します:

<html>
  <body>
    <div><span>Hello</span></div>
  </body>
</html>

Railsテンプレートシステムに非常に近いCodeigniterのContentfulライブラリを使用しようとしましたが、もう1つの深さレベルで埋め込む考えがありません.

何か案が ?

4

3 に答える 3

0

最後に、必要なものを処理する独自のライブラリを作成しました: https://github.com/ldiqual/codeigniter-pview

とにかく、あなたの答えをありがとう:)

于 2011-07-31T17:33:13.153 に答える
0

includeファイルだけを直接指定できます。

CodeIgniter では、すべてのファイルがメインの index.php から参照されるため、ファイル パスはそこから取得されます。ページを複数回含めincludeないように使用します。include_once複数回含まれていると競合する可能性のある関数やその他の一意のアイテムをビューに作成していない限り、問題はありません。

例:

メインビュー

<html>
  <body>
    <?php include('application/views/page.php') ?>
  </body>
</html>

ページビュー

<div><?php include('application/views/section.php') ?></div>
于 2011-07-30T18:17:51.580 に答える
0

いくつかのテンプレート ライブラリを使用する (または独自に作成する) ことをお勧めします。その理由は、今のようにデータを管理してバインドするのが難しくなるためです。テンプレート ライブラリを使用するという考え方は、すべてのビュー ファイルを収集し、それらをそれぞれ正しい位置に配置することです。または、管理可能な理由から、最近のビュー構造スキーマを再設計して、深さ 2 以下 (「部分」ビューの概念) にすることが最善の策になると思います。

于 2011-07-30T18:45:01.470 に答える