Katika Laravel, mpangilio una jukumu kubwa katika kujenga kiolesura cha mtumiaji kwa programu ya wavuti. Mpangilio unawakilisha muundo wa jumla wa ukurasa wa wavuti, ikijumuisha sehemu za kawaida kama vile header
, footer
na sidebar
. Katika makala hii, tutachunguza jinsi ya kujenga mipangilio Laravel ili kuunda miingiliano inayoweza kunyumbulika na inayoweza kudumishwa.
Kwanza, hebu tutengeneze muundo wa msingi wa tovuti yetu. Anza kwa kuunda faili iliyopewa jina app.blade.php
kwenye saraka. Faili hii itatumika kama mpangilio mkuu wa tovuti nzima. resources/views/layouts
Hapa kuna mfano wa yaliyomo kwenye app.blade.php
faili:
<!DOCTYPE html>
<html>
<head>
<title>@yield('title')</title>
<link rel="stylesheet" href="{{ asset('css/app.css') }}">
</head>
<body>
<header>
<h1>Header</h1>
</header>
<nav>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/about">About</a></li>
<li><a href="/contact">Contact</a></li>
</ul>
</nav>
<main>
@yield('content')
</main>
<footer>
<p>Footer</p>
</footer>
<script src="{{ asset('js/app.js') }}"></script>
</body>
</html>
Katika mpangilio huu, tunatumia @yield
maagizo ili kufafanua sehemu zinazobadilika ndani ya mpangilio. Kwa mfano, @yield('title')
huruhusu mtoto kubatilisha na kuweka kichwa cha ukurasa. Vile vile, inaruhusu mtoto kuingiza maudhui kuu ya ukurasa. views @yield('content')
views
Mara tu mpangilio unapoundwa, tunaweza kuunda mtoto atakayetumia mpangilio huu. Kwa mfano, ili kuunda ukurasa na mpangilio sawa, tengeneza faili inayoitwa kwenye saraka. Faili hii itapanua mpangilio na kufafanua maudhui maalum ya ukurasa: views about
about.blade.php
resources/views
app.blade.php
about
@extends('layouts.app')
@section('title', 'About')
@section('content')
<h2>About Page</h2>
<p>This is the about us page.</p>
@endsection
Katika mfano hapo juu, tunatumia @extends
maagizo kurithi app.blade.php
mpangilio. Ifuatayo, tunatumia @section
maagizo kufafanua yaliyomo maalum kwa sehemu title
na content
sehemu za ukurasa.
Hatimaye, tunahitaji kufafanua njia za kuunganisha URL kwa. views
Kwa mfano, katika routes/web.php
faili, unaweza kuongeza njia zifuatazo:
Route::get('/', function() {
return view('welcome');
});
Route::get('/about', function() {
return view('about');
});
Katika mfano huu, "/" URL imeunganishwa na welcome.blade.php
view, huku /about
URL ikiunganishwa na about.blade.php
view.
Kwa kumalizia, muundo wa muundo ndani Laravel hukuruhusu kuunda kiolesura cha pamoja cha programu yako ya wavuti na kudhibiti sehemu za kawaida kama vile header
, footer
na sidebar
. Kwa kutumia mipangilio na mtoto, unaweza kuunda violesura vinavyonyumbulika na vinavyoweza kudumishwa katika. views Laravel