75 phút
Blade Templates và Forms trong Laravel
Blade Template Engine
Template Inheritance
<!-- layouts/app.blade.php -->
<html>
<head>
<title>@yield('title')</title>
</head>
<body>
@section('sidebar')
Sidebar content
@show
<div class="container">
@yield('content')
</div>
</body>
</html>
<!-- pages/home.blade.php -->
@extends('layouts.app')
@section('title', 'Home Page')
@section('sidebar')
@parent
<p>Additional sidebar content</p>
@endsection
@section('content')
<h1>Welcome to Home Page</h1>
@endsection
Blade Directives
@if($users->count())
<ul>
@foreach($users as $user)
<li>{{ $user->name }}</li>
@endforeach
</ul>
@else
<p>No users found.</p>
@endif
@for($i = 0; $i < 10; $i++)
<p>Current value: {{ $i }}</p>
@endfor
@auth
<p>Welcome authenticated user!</p>
@else
<p>Please log in.</p>
@endauth
Forms và Validation
Tạo Form
<form method="POST" action="/users">
@csrf
<div>
<label for="name">Name:</label>
<input type="text" id="name" name="name" value="{{ old('name') }}">
@error('name')
<span class="error">{{ $message }}</span>
@enderror
</div>
<div>
<label for="email">Email:</label>
<input type="email" id="email" name="email" value="{{ old('email') }}">
@error('email')
<span class="error">{{ $message }}</span>
@enderror
</div>
<button type="submit">Create User</button>
</form>
Validation trong Controller
public function store(Request $request)
{
$validated = $request->validate([
'name' => 'required|string|max:255',
'email' => 'required|email|unique:users',
'password' => 'required|min:8|confirmed',
]);
User::create($validated);
return redirect('/users')->with('success', 'User created successfully!');
}
Bài tập tiếp theo
Chúng ta sẽ học về Authentication và Authorization!