Laravel Cheat Sheet
Page 1/2
1. Installation & Setup
• Install Laravel:
bash
Copy
composer create-project --prefer-dist laravel/laravel projectName
• Serve the Application:
bash
Copy
php artisan serve
• Environment Configuration:
o Edit .env file for environment variables.
o Generate application key:
bash
Copy
php artisan key:generate
2. Routing
• Basic Route:
php
Copy
Route::get('/hello', function () {
return 'Hello, World!';
});
• Route Parameters:
php
Copy
Route::get('/user/{id}', function ($id) {
return 'User ID: ' . $id;
});
• Named Routes:
php
Copy
Route::get('/user/profile', function () {
// ...
})->name('profile');
• Route Groups:
php
Copy
Route::prefix('admin')->group(function () {
Route::get('/dashboard', function () {
// ...
});
});
3. Controllers
• Create Controller:
bash
Copy
php artisan make:controller UserController
• Basic Controller:
php
Copy
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function show($id)
{
return 'User ID: ' . $id;
}
}
• Route to Controller:
php
Copy
Route::get('/user/{id}', [UserController::class, 'show']);
4. Views
• Create View:
o Save as resources/views/welcome.blade.php.
html
Copy
<h1>Hello, {{ $name }}</h1>
Run HTML
• Return View from Controller:
php
Copy
return view('welcome', ['name' => 'John']);
5. Blade Templating
• Display Variables:
blade
Copy
<p>{{ $variable }}</p>
• Control Structures:
blade
Copy
@if ($condition)
<p>Condition is true</p>
@else
<p>Condition is false</p>
@endif
• Loops:
blade
Copy
@foreach ($users as $user)
<p>{{ $user->name }}</p>
@endforeach
6. Database & Eloquent ORM
• Create Migration:
bash
Copy
php artisan make:migration create_users_table
• Run Migrations:
bash
Copy
php artisan migrate
• Eloquent Model:
php
Copy
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
// ...
}
• Querying Data:
php
Copy
$users = User::all();
$user = User::find(1);
Laravel Cheat Sheet
Page 2/2
7. Middleware
• Create Middleware:
bash
Copy
php artisan make:middleware CheckAge
• Apply Middleware:
php
Copy
Route::get('/profile', function () {
// ...
})->middleware('auth');
8. Validation
• Validate Request:
php
Copy
$request->validate([
'name' => 'required|max:255',
'email' => 'required|email|unique:users',
]);
• Custom Error Messages:
php
Copy
$messages = [
'required' => 'The :attribute field is required.',
];
$request->validate([
'name' => 'required',
], $messages);
9. Authentication
• Scaffold Authentication:
bash
Copy
composer require laravel/ui
php artisan ui vue --auth
npm install && npm run dev
• Protect Routes:
php
Copy
Route::get('/profile', function () {
// ...
})->middleware('auth');
10. Artisan Commands
• List All Commands:
bash
Copy
php artisan list
• Create Model with Migration:
bash
Copy
php artisan make:model Post -m
• Run Tinker:
bash
Copy
php artisan tinker
• Clear Cache:
bash
Copy
php artisan cache:clear
11. API Development
• Create API Resource:
bash
Copy
php artisan make:resource UserResource
• Return Resource:
php
Copy
return new UserResource($user);
• API Routes:
php
Copy
Route::apiResource('users', UserController::class);
12. Testing
• Create Test:
bash
Copy
php artisan make:test UserTest
• Run Tests:
bash
Copy
php artisan test