Laravel継承の使い方

WBOY
リリース: 2023-05-26 18:35:09
オリジナル
638 人が閲覧しました

Laravel は、高品質のアプリケーションを迅速に開発するのに役立つ多くの便利な機能とツールを提供する人気のある Web アプリケーション フレームワークです。これらの機能とツールを使用すると、開発者は Web アプリケーションを迅速に作成して保守できるようになります。 Laravel の重要な機能はビューの継承です。

ビューの継承は、Laravel の Web アプリケーション開発にとって非常に便利な機能であり、複数のビュー間で同じビュー レイアウトとコード ブロックを共有できるようになります。この機能により、冗長なコードが削減され、コードの再利用性が向上すると同時に、開発者のコ​​ーディング作業も容易になります。

この記事では、Laravelでのビュー継承の使い方を詳しく紹介します。

ステップ 1: メイン ビュー ファイルを作成する

まず、メイン ビュー テンプレートを作成し、テンプレート上で共有レイアウトとコード ブロックを定義する必要があります。 Laravel アプリケーションでは、メイン ビュー ファイルは通常、以下に示すように、layout.blade.php という名前になります。

<!DOCTYPE html>
<html>
  <head>
    <title>@yield('title')</title>
  </head>
  <body>
    <div class="container">
      @yield('content')
    </div>
  </body>
</html>
ログイン後にコピー

このコードでは、共通のページ コンテナを含む HTML レイアウトを定義します。このコンテナは配置場所です。コンテンツをサブビューとしてメイン テンプレートに渡します。

さらに、Laravel の @yield ディレクティブを使用して、サブビュー内で置換できるプレースホルダーを定義しました。たとえば、 @yield('title') はサブビューのタイトルに置き換えられます。

ステップ 2: サブビュー ファイルを作成する

次に、レイアウトとコード ブロックを共有するために、メイン ビューにサブビュー ファイルを埋め込む必要があります。 Laravel では、@extend ディレクティブを使用して基本レイアウトを継承できます。例:

@extends('layout')

@section('title', 'Page Title')

@section('content')
  <p>This is my page content.</p>
@endsection
ログイン後にコピー

このコード スニペットでは、@extends ディレクティブを使用して、layout.blade.php レイアウト テンプレートを明示的に継承します。次に、@section ディレクティブと @endsection ディレクティブを使用して、メイン レイアウトに挿入されるサブビュー コンテンツを定義します。

@section ディレクティブは、コード ブロックを定義し、コード ブロックの名前を定義します。このコード ブロックは、コンテンツを配置するメイン レイアウトなど、他の場所で使用できます。より完全な例を次に示します。

@extends('layout')

<!-- 定义页面标题 -->
@section('title', 'Page Title')

<!-- 子视图片段内容 -->
@section('content')
    <p>This is my page content.</p>
@endsection

<!-- 子视图片段,显示在顶部 -->
@section('header')
    <h1>Welcome to my Site</h1>
    <nav>
        <ul>
            <li><a href="/">Home</a></li>
            <li><a href="/about">About</a></li>
            <li><a href="/contact">Contact</a></li>
        </ul>
    </nav>
@endsection

<!-- 子视图片段,显示在底部 -->
@section('footer')
    <p>© 2021 My Site</p>
@endsection
ログイン後にコピー

この例では、@section ディレクティブで始まる 3 つのコード ブロック (タイトル、コンテンツ、ヘッダー、およびフッター) を定義します。必要に応じて、これらのコード ブロックで必要なものをすべて定義できます。

ビューがレンダリングされると、これらの命令が処理され、対応するプレースホルダーが対応するコンテンツに置き換えられます。

最後に、メイン ビューを通じてページ全体をレンダリングできるように、サブビュー ファイルをビュー レンダラーに渡す必要があります。 Laravel でビュー関数を使用すると、レンダリングされたビュー名と代表ビューのデータを渡すことができます。

return view('page');
ログイン後にコピー

この例では、ビュー関数を使用してページビューをビューレンダラーに渡します。これは、layout.blade.php レイアウト テンプレートに含まれ、最終ビューとしてレンダリングされます。

結論

Laravel は、開発者に迅速な Web アプリケーション開発のための多くのツールと機能を提供する非常に強力な Web 開発フレームワークです。

重要な機能の 1 つはビューの継承です。これにより、Web アプリケーションのコードを簡単に編成し、コードをより簡潔、明確、保守しやすくすることができます。

この記事では、メインビューとサブビューの作成方法、それらをビューレンダラーに渡す方法など、Laravel でビューの継承を使用する方法について説明しました。

ビューの継承の使用は、Laravel Web アプリケーション開発の不可欠な部分であり、これを習得することは Web 開発プロセスに大きな影響を与えます。

以上がLaravel継承の使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート