0

Cakephpを使用してWebアプリを開発しています。Webサイトのデフォルトのレイアウトを作成しました。ヘッダー、フッター、コンテンツなどのセクションを作成しました。

これで、コンテンツセクションの一部のページが同じ構造になりました。これらは、ページごとに定義されたさまざまなビューを持つコントローラーの一部です。ここではどのビューテンプレートを使用する必要がありますか?レイアウトまたは要素?

レイアウトを使用する場合は、コントローラーを使用して使用するレイアウトを決定しますが、それによってWebサイト全体のレイアウトが変更されることはありませんか?

よろしく

4

1 に答える 1

1

これは本当に好みの問題です。レイアウトをページの「構造」と考えようとしています。つまり、ヘッダー、左ナビゲーションのプレースホルダー、上ナビゲーションのプレースホルダー、フッターです。そういうこと。レイアウトでこれらのセクションを定義します。

「同じ構造のコンテンツセクションのページ」をレイアウトすることをお勧めします。あなたが言ったように、コントローラーでレイアウトを切り替えることができますが、同様に構造化されたページ(コンテンツを削除すると互いに同じように見えるページ)はレイアウトを共有します。

レイアウト切り替えの別の例は、ログインユーザーと匿名ユーザーの場合です。ログインしたユーザーの場合、Webサイトの上部に「ようこそ、$ name」メッセージが表示され、マイアカウントへのリンク、サインアウトなどが表示されることがよくあります。ログインユーザーと非ユーザーユーザーで異なるレイアウトを使用していることがよくあります。また、その状況では、beforeFilter()メソッドを使用して、特定のコントローラーのレイアウトを設定します。これは、そのコールバックが実行されたときにユーザーがログインしているかどうかがわかっているためです。

とりとめのないことで申し訳ありませんが、これは少し灰色の領域です(レイアウトとさまざまな要素を使用する場合)。

于 2010-07-22T19:29:32.730 に答える