Master Laravel 10 For Beginners & Intermediate 2023
Last updated 6/2023
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 23.96 GB | Duration: 52h 12m
Last updated 6/2023
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 23.96 GB | Duration: 52h 12m
Master Laravel 10: Build 5 Real-World Projects! Unlock Web Development Skills with In-Demand PHP Framework!
What you'll learn
Laravel Setup: Learn how to setup and configure Laravel.
MVC Architecture: Understand Laravel's MVC design pattern.
Routing: Master Laravel's critical routing system.
Blade Templating: Use Laravel's Blade for managing views.
Eloquent ORM: Explore database management with Eloquent ORM.
Database Seeding: Learn migrations and seeding in Laravel.
RESTful APIs: Develop APIs handling JSON requests/responses.
Auth Systems: Build secure apps with Laravel's auth systems.
Front-end Integration: Integrate Laravel with front-end libraries.
Real-world Apps: Create five practical projects in Laravel.
Requirements
Bring along a foundational understanding of PHP
Equipped with the basics of web development
Description
Get started on your Laravel journey with our comprehensive course designed for beginners! Laravel has emerged as the top pick among PHP developers for its simplicity, high performance, and wide-ranging suite of tools that streamline the web development process.As PHP 8 unfolds, Laravel is all set to redefine your perception of PHP altogether. It's like the Ruby on Rails of the PHP universe, and perhaps even superior. It's expressive, fun, fluent, easy to master, and a breeze to use. Both newcomers and seasoned professionals can't seem to get enough of it! Now, you have the opportunity to join this community of satisfied individuals who enjoy building things and earn while doing so.Our Laravel course is all you'll ever need to understand everything about this robust framework – setting it up, getting started, and leveraging its powerful capabilities for modern web development. We'll cover in depth 5 key projects in 2023:Task ListBook ReviewsEvent Management APILivewire Poll AppJob Portal (our most extensive project)Let's pause the introduction here and take a look at what our students are saying about my courses:"Amazing course! In-depth explanations, perfect talking pace, talks slow and is direct to the point. I had no previous knowledge in Symfony before starting, and this course gave me the confidence to start developing real-world apps using Symfony. You will learn a lot of the Symfony framework, and some other cool techniques like Ajax Calls, Testing, Server configuration and Continuous Deployment of your code.""This is a Fantastic Course for Symfony exceeds expectations!! Piotr is an experienced, knowledgeable, and serious developer. This course not only helped me to learn the inner workings of Symfony but also improve my OO PHP syntax, improve on git, get a better understanding of development stages, introduced me to cloud deployment … even CI/CD. From where I stand as a beginner, it's a mini MVC developer course. Couldn't recommend it enough. You will certainly learn. Thanks, Piotr.""Did the instructor write Symfony? He is very very knowledgeable.""This guy is by far the best instructor I've ever come across. I took his other Symfony course and advanced my understanding of the Framework more in a week than I have in the past year. This course has filled a ton of gaps. He understands the complex learning curve and it's the relationship to the content he covers thoroughly… a rarity in teaching, never mind coding complex Frameworks. Just stick with the course.. you'll have that 'Aha!' moment. I'm working on my own Symfony Framework based project(s) as I take this course… between Piotr, Github, and Google… it's getting done! Two of the most effective courses I've ever taken. I can't wait for what he puts out next."Don't delay!If you want to invest your time wisely, this course could be the most productive period you will have. You'll feel completely at home with Laravel by the end of it.Even if you're pressed for time, we've got you covered. The course is designed to cater to your schedule. You can learn at your own pace. The first section will introduce you to Laravel's basics, getting you started in just 3-4 hours. Once you're ready for more, the course is here, waiting for you to dive in.
Overview
Section 1: Introduction to the Course
Lecture 1 Welcome to the Course!
Lecture 2 How to Get Help?
Lecture 3 Source Code of The Course!
Lecture 4 Visual Studio Code Recommendations
Lecture 5 What is Laravel?
Lecture 6 Resourced and Links!
Section 2: Setting up for Windows!
Lecture 7 Setting Up for Windows! - Section Introduction
Lecture 8 Installing PHP 8.2 on Windows
Lecture 9 Installing Composer on Windows
Lecture 10 Installing and Running Docker (for MySQL etc.) on Windows
Lecture 11 Installing Node.js on Windows (Required Later!)
Section 3: Setting Up for Mac!
Lecture 12 Setting Up for Mac! - Section Introduction
Lecture 13 Installing the Homebrew Package Manager
Lecture 14 Installing PHP 8.2 on Mac
Lecture 15 Installing Composer on Mac
Lecture 16 Installing and Running Docker (for MySQL etc.) on Mac
Lecture 17 Installing Node.js on Mac (Required Later!)
Section 4: Project #1 - Task List
Lecture 18 Project #1 - Section Introduction
Lecture 19 Creating Laravel Project
Lecture 20 All About Routing
Lecture 21 Blade Templates
Lecture 22 Blade Directives
Lecture 23 Layouts Using Template Inheritance
Lecture 24 Running a MySQL Database and Client Using Docker
Lecture 25 Connecting to the Database From Laravel
Lecture 26 Models and Migrations
Lecture 27 Model Factory and Seeder
Lecture 28 Model and Reading Data
Lecture 29 Forms and CSRF Protection
Lecture 30 Validating and Storing Data
Lecture 31 Sessions, Errors & Flash Messages
Lecture 32 Edit Form
Lecture 33 Keeping Old Values in the Form
Lecture 34 Reusability (Route Model Binding Form Requests, Mass Assignment)
Lecture 35 Deleting Data
Lecture 36 Reusing Blade Code - Subviews
Lecture 37 Adding Pagination
Lecture 38 Toggling Task State
Lecture 39 Adding Styling with Tailwind CSS
Lecture 40 Styling the Task Page
Lecture 41 Styling Forms
Lecture 42 Styling Flash Message & Using Alpine.js
Section 5: Project #2 - Book Reviews
Lecture 43 Project #2 - Section Introduction
Lecture 44 Creating the Book Review Project and Setting Up
Lecture 45 Defining the One to Many Relationship
Lecture 46 Factory & Seeder
Lecture 47 Querying & Associating Related Models
Lecture 48 Local Query Scopes
Lecture 49 Aggregations on Relations
Lecture 50 Highest Rated & Popular Books
Lecture 51 Getting Books with Recent Reviews
Lecture 52 Controllers & Resource Controllers
Lecture 53 Displaying the Book List
Lecture 54 Filter Books by Title - Adding the Form
Lecture 55 Popular or Highest Rated - the View
Lecture 56 Popular or Highest Rated - the Logic
Lecture 57 One Book Page
Lecture 58 Cache and Caching Queries
Lecture 59 Invalidating Cache
Lecture 60 Rating and Review Count on All Pages
Lecture 61 Blade Components - Star Rating Component
Lecture 62 Scoped Resource Controller - Adding a Review
Lecture 63 Rate Limiting
Section 6: Project #3 - Events Management App (REST API)
Lecture 64 Project #3 - Section Introduction
Lecture 65 Creating the REST API Project
Lecture 66 Seeding Data for the REST API
Lecture 67 Postman REST Client Crash Course
Lecture 68 Storing Data and Validation
Lecture 69 Updating and Deleting Data
Lecture 70 API Resources - Controlling JSON Response
Lecture 71 Attendees and Pagination
Lecture 72 Optional Relation Loading
Lecture 73 Universal Relation Loading Trait
Lecture 74 Loading Attendee Relations
Lecture 75 Setting Up Authentication Using Sanctum
Lecture 76 Protecting Routes
Lecture 77 Automatically Adding Token in Postman Requests
Lecture 78 Revoking Tokens and Signing Out
Lecture 79 Authorization with Gates
Lecture 80 Authorization with Policies
Lecture 81 Manual Authorization with Policies
Lecture 82 Reminding About Events - Custom Artisan Command
Lecture 83 Reminding About Events - Task Scheduling
Lecture 84 Reminding About Events - Notifications and Email Sending
Lecture 85 Reminding About Events - Queues
Lecture 86 Throttling the API
Section 7: Project #4 - Livewire Poll App
Lecture 87 Project #4 - Section Introduction
Lecture 88 Creating the Project and Setting Up Livewire
Lecture 89 Creating Models and Migrations for the Poll App
Lecture 90 Your First Livewire Component
Lecture 91 How Livewire Works?
Lecture 92 Actions in Livewire
Lecture 93 Editing Poll Options
Lecture 94 Creating a Poll
Lecture 95 Refactoring the Poll Storing Code
Lecture 96 Validation in Livewire
Lecture 97 Listing Polls Component
Lecture 98 Events - Communication Between Components
Lecture 99 Voting in Polls!
Section 8: Project #5 - Job Board
Lecture 100 Project #5 - Section Introduction
Lecture 101 Creating the Job Board Project and Job Model
Lecture 102 Adding Laravel Debugbar
Lecture 103 Setting Up Tailwind CSS using Vite (and Node)
Lecture 104 Layouts Using Components
Lecture 105 Jobs Page & Card Component
Lecture 106 Jobs Page: Tag Component & Job Info
Lecture 107 Job Page: Job Card & Link Button Components
Lecture 108 Breadcrumbs Navigation
Lecture 109 Filtering Jobs: Tailwind Form Plugin & Text Inputs
Lecture 110 Filtering Jobs: Form & Searching for Text in Job Posts
Lecture 111 Filtering Jobs: Min & Max Salary
Lecture 112 Filtering Jobs: Radio Button Filters (Select One Option of Many)
Lecture 113 Filtering Jobs: Radio Group Component
Lecture 114 Filtering Jobs: Configuring Labels and Talking About Arrays in PHP
Lecture 115 Filtering Jobs: Clearing the Input
Lecture 116 Refactor Time: Gradient Background, Styling Buttons, Adding Alpine.js
Lecture 117 Refactor Time: Plain Vanilla JavaScript to Alpine.js
Lecture 118 Refactor Time: Refactoring Filtering Backend Logic
Lecture 119 Employer: Model, Migration, Relations
Lecture 120 Employer: Factory & Seeder
Lecture 121 Employer: Searching By Employer Name
Lecture 122 Employer: Other Employer Jobs on the Job Page
Lecture 123 Authentication: The Controller
Lecture 124 Authentication: Sign-in Form
Lecture 125 Authentication: Sign-in Logic
Lecture 126 Authentication: Logging Out
Lecture 127 Applying for Jobs: Model, Factory, Relations & Migration
Lecture 128 Applying for Jobs: Controller, Routing and Application Form
Lecture 129 Applying for Jobs: The Logic
Lecture 130 Applying for Jobs: The Job Policy
Lecture 131 Applying for Jobs: Did I Already Apply?
Lecture 132 My Applications: Controller and View
Lecture 133 My Applications: Applicant Count, Average Asking Salary
Lecture 134 My Applications: Cancelling Applications
Lecture 135 File Uploads: Understanding File System & Configuring Disks
Lecture 136 Where Are We Right Now?
Section 9: OLD CONTENT: Introduction and Recommendations
Lecture 137 Welcome to the Course!
Lecture 138 About Laravel Versions (OPTIONAL)
Lecture 139 Setup Recommendations and Course Prerequisites
Lecture 140 Code Editor: Visual Studio Code Setup and Recommendations
Lecture 141 Course Source Code
Lecture 142 Additional Learning Resource (Cheat Sheet, Diagrams)
Section 10: OLD CONTENT: Windows Specific Setup
Lecture 143 Windows - Setting Up XAMPP (PHP/Apache/MySQL)
Lecture 144 Windows - PHP in the Command Line
Lecture 145 Windows - Composer
Section 11: OLD CONTENT: Mac Specific Setup
Lecture 146 Mac - Setting Up XAMPP (PHP/Apache/MySQL)
Lecture 147 Mac - PHP in the Command Line
Lecture 148 Mac - Composer
Section 12: OLD CONTENT: Creating the New Laravel Project
Lecture 149 Creating New Laravel Project Using Composer
Section 13: OLD CONTENT: Windows - Setting Up Local Domain (OPTIONAL!)
Lecture 150 Windows - Setting Up Virtual Host in Apache
Lecture 151 Windows - Setting Up Host on the System
Section 14: OLD CONTENT: Mac - Setting Up Local Domain (OPTIONAL!)
Lecture 152 Mac - Setting Up Virtual Host in Apache
Lecture 153 Mac - Setting Up Host on the System
Section 15: OLD CONTENT: Laravel Introduction
Lecture 154 Laravel Project Structure Overview
Lecture 155 Artisan Command
Section 16: OLD CONTENT: Routing
Lecture 156 Understanding Routing in Laravel
Lecture 157 Defining Routes
Lecture 158 Managing and Naming Routes
Lecture 159 Route Parameters
Lecture 160 Optional Route Parameters
Lecture 161 Constraining Possible Route Parameters Values
Section 17: OLD CONTENT: Templating and Views
Lecture 162 Understanding Templating, Views and Blade
Lecture 163 Template Inheritance and Layouts
Lecture 164 Passing and Rendering Data in Templates
Lecture 165 Simple View Rendering Routes
Lecture 166 Conditional Rendering
Lecture 167 Conditional Rendering Alternatives
Lecture 168 Loops in Templates
Lecture 169 More Control Inside Loops
Lecture 170 Partial Templates (Including Templates)
Lecture 171 Partial Templates in Loops
Section 18: OLD CONTENT: Request and Response
Lecture 172 Responses, Codes, Headers, and Cookies
Lecture 173 Redirect Responses
Lecture 174 Returning JSON
Lecture 175 Returning File Downloads
Lecture 176 Grouping Routes
Lecture 177 Request Input (Reading User Input)
Lecture 178 Request Input - An Overview of Options
Lecture 179 Middleware - Running Code Before & After Request
Section 19: OLD CONTENT: Controllers
Lecture 180 Controllers
Lecture 181 Single Action Controllers
Lecture 182 Resource Controllers
Lecture 183 Implementing a Resource Controller
Section 20: OLD CONTENT: Configuration & Environments
Lecture 184 Configuration and Environments Overview
Lecture 185 Configuring the Database Connection
Section 21: OLD CONTENT: Databases - Introduction & Migrations
Lecture 186 Databases Bird's Eye Overview
Lecture 187 Migrations Overview
Lecture 188 Creating and Running Migrations
Section 22: OLD CONTENT: Databases - Eloquent ORM
Lecture 189 Understanding Eloquent ORM Models
Lecture 190 Models - Creating and Updating, Introducing Tinker
Lecture 191 Models - Retrieving Single Model
Lecture 192 Models - Retrieving Multiple Models and Collections Overview
Lecture 193 Models - Using the Query Builder
Lecture 194 Practical - List of Blog Posts and Single Blog Post
Section 23: OLD CONTENT: Forms
Lecture 195 Forms Markup
Lecture 196 Cross Site Request Forgery Explained
Lecture 197 Forms - Storing Submitted Data
Lecture 198 Forms - Input Validation
Lecture 199 Forms - Displaying Validation Errors
Lecture 200 Forms - Form Request Classes
Lecture 201 Session Flash Messages
Lecture 202 Forms - Old Input Helper
Lecture 203 Forms/Models - Model Mass Assignment
Section 24: OLD CONTENT: CRUD - Editing, Updating and Deleting
Lecture 204 CRUD - Edit Form
Lecture 205 CRUD - Update Action
Lecture 206 CRUD - Deleting Using Forms
Lecture 207 CRUD - Deleting Models
Section 25: OLD CONTENT: Assets & Styling (JavaScript, CSS, Laravel Mix, Bootstrap)
Lecture 208 Introduction to Laravel Mix
Lecture 209 Installing Bootstrap CSS Framework
Lecture 210 Using NPM and Compiling Assets With Mix/Webpack
Lecture 211 Including Assets in Views
Lecture 212 Versioned Assets (Cache Improvements)
Lecture 213 Introduction to Bootstrap CSS
Lecture 214 Understanding CSS Flexbox in General and in Bootstrap
Lecture 215 Layout Grid and Styling Header Bar
Lecture 216 Styling Forms
Lecture 217 Styling Post List Page
Lecture 218 Styling Single Post Page
Lecture 219 Styling Flash Messages and Error Messages
Section 26: OLD CONTENT: Testing Basics
Lecture 220 Testing
Lecture 221 Testing configuration and environment
Lecture 222 Writing first functional test
Lecture 223 Testing database interactions
Lecture 224 Testing store() action (model creation)
Lecture 225 Testing for failure
Lecture 226 Testing update() action (model updates)
Lecture 227 Testing delete() action (model deletion)
Section 27: OLD CONTENT: One to One Eloquent Relations
Lecture 228 One to One relation with migration
Lecture 229 One to One assigning relationship
Lecture 230 One to One querying relationship
Section 28: OLD CONTENT: One to Many Eloquent Relations
Lecture 231 One to Many relation with migration
Lecture 232 One to Many assigning relationship
Lecture 233 One to Many querying relationship
Section 29: OLD CONTENT: Querying Basics
Lecture 234 Lazy Loading vs Eager Loading
Lecture 235 Querying relationship existence
Lecture 236 Querying relationship absence
Lecture 237 Counting related models
Lecture 238 Using withCount() in practice (fetching count of comments) with test
Section 30: OLD CONTENT: Model Factories
Lecture 239 Model Factory introduction
Lecture 240 Model Factory states
Lecture 241 Model Factory callbacks (afterCreating, afterMaking)
Lecture 242 Application: Implementing comment list
Section 31: OLD CONTENT: Authentication
Lecture 243 IMPORTANT: Laravel 7 and Laravel 8 Changes
Lecture 244 Authentication overview
Lecture 245 How user registration works in Laravel
Lecture 246 Guard component and how logging users in works
Lecture 247 Custom registration form and Auth routes
Lecture 248 Formatting validation errors
Lecture 249 RedirectIfAuthenticated middleware
Lecture 250 Log-in form with "Remember Me" feature
Lecture 251 Logging out, @guest directive, debugging CSRF token errors
Lecture 252 Retrieving the currently authenticated user
Lecture 253 Protecting routes (requiring authentication)
Lecture 254 Testing routes that require authentication
Section 32: OLD CONTENT: Database Seeding
Lecture 255 Refreshing database, database foreign keys and existing data
Lecture 256 Problem: SQLite test database NOT NULL problem
Lecture 257 Database seeding basics
Lecture 258 Using Model Factory inside Seeder
Lecture 259 Model relations inside seeder
Lecture 260 Individual seeder classes
Lecture 261 Making seeder interactive
Section 33: OLD CONTENT: Deleting Models and Soft Deletes
Lecture 262 Deleting related model using model events
Lecture 263 Deleting related models using cascading
Lecture 264 Soft deletes
Lecture 265 Soft deletes querying
Lecture 266 Restoring soft deleted model
Lecture 267 Testing soft deleted models
Section 34: OLD CONTENT: Authorization, Policies, Gates
Lecture 268 Authorization introduction
Lecture 269 Introduction to Gates
Lecture 270 Using authorize() helper
Lecture 271 Verifying permissions of the user
Lecture 272 Admin users and overriding permissions
Lecture 273 Policies introduction
Lecture 274 Policy or Gate?
Lecture 275 Verifying permissions in Blade templates
Lecture 276 Using middleware to authorize routes
Lecture 277 Application: updating tests
Section 35: OLD CONTENT: Query Scopes - Local & Global
Lecture 278 Application: setting user_id for the new BlogPost
Lecture 279 Global Query Scopes introduction
Lecture 280 Global Query Scopes and potential issues
Lecture 281 Local Query Scopes introduction
Lecture 282 Practical: Local Query Scope - most commented posts
Lecture 283 Practical: Local Query Scope - most active users
Lecture 284 Practical: Local Query Scope - most active users last month
Lecture 285 Practical: Global Query Scope - admin can see deleted posts
Section 36: OLD CONTENT: Laravel Blade Components
Lecture 286 Blade Components introduction
Lecture 287 Component aliases
Lecture 288 Conditional rendering in Component
Lecture 289 Practical: creating reusable component for dates
Lecture 290 Complicated example of conditional rendering
Lecture 291 Application: Fixing an issue with HAVING clause
Section 37: OLD CONTENT: Caching
Lecture 292 Caching introduction
Lecture 293 Laravel Debugbar
Lecture 294 Storing data in cache
Lecture 295 Removing from cache
Lecture 296 Cache facade
Lecture 297 Practical: using cache as storage
Lecture 298 Practical: using cache for storage implementation
Lecture 299 Using and setting up Redis as cache storage
Lecture 300 Cache tags introduction
Lecture 301 Practical: using cache tags
Section 38: OLD CONTENT: Many to Many Eloquent Relations
Lecture 302 ManyToMany introduction
Lecture 303 ManyToMany migration
Lecture 304 Defining ManyToMany on models
Lecture 305 Associating models in ManyToMany
Lecture 306 Querying the ManyToMany relation and Pivot tables
Lecture 307 Practical: displaying the list of tags using Blade component
Lecture 308 Practical: list of blog posts by tag
Lecture 309 Blade View Composers
Lecture 310 View Composer with @include
Lecture 311 ManyToMany seeding
Section 39: OLD CONTENT: Wrap Up #1 (Reusable Components, Query Scopes, Route Model Binding)
Lecture 312 Practical: User to Comment OneToMany relation and migration
Lecture 313 Practical: comments form and reusable errors component
Lecture 314 Route Model Binding
Lecture 315 Eager loading nested relationships
Lecture 316 Converting repeating queries to query scopes
Section 40: OLD CONTENT: File Storage and Uploading
Lecture 317 File Storage introduction
Lecture 318 File upload form
Lecture 319 Handling file uploads
Lecture 320 Using Storage facade to store files
Lecture 321 Getting the URL of stored file
Lecture 322 Practical: Image model, OneToOne relation and migrations
Lecture 323 Uploaded image URL
Lecture 324 Practical: Displaying uploaded image and styling
Lecture 325 Deleting files
Lecture 326 Validating uploaded files (size, type, dimensions)
Section 41: OLD CONTENT: One to One Polymorphic Eloquent Relation
Lecture 327 Section intrduction
Lecture 328 Practical: Scaffolding UserController and UserPolicy, using authorizeResource
Lecture 329 Practical: Views for showing/editing user profile
Lecture 330 OneToOne Polymorphic explained
Lecture 331 OneToOne Polymorphic migration
Lecture 332 OneToOne Polymorphic defining relation
Lecture 333 OneToOne Polymorphic associating
Lecture 334 Practical: OneToOne Polymorphic with BlogPost and Image
Section 42: OLD CONTENT: One to Many Polymorphic Eloquent Relation
Lecture 335 OneToMany Polymorphic explained
Lecture 336 OneToMany Polymorphic migration & relation
Lecture 337 OneToMany Polymorphic associating
Lecture 338 Practical: OneToMany Polymorphic views
Lecture 339 Practical: Running tests on MySQL database
Lecture 340 OneToMany Polymorphic seeder
Section 43: OLD CONTENT: Many to Many Polymorphic Eloquent Relation
Lecture 341 ManyToMany Polymorphic explained
Lecture 342 ManyToMany Polymorphic migration
Lecture 343 ManyToMany Polymorphic relations
Lecture 344 Understanding model Traits
Lecture 345 Creating Taggable model trait
Section 44: OLD CONTENT: Sending Emails
Lecture 346 Development setup for sending emails
Lecture 347 The Mailable class explained
Lecture 348 Rendering e-mail content and e-mail sending
Lecture 349 Attaching files & data to e-mails
Lecture 350 Embedding an image inside the e-mail
Lecture 351 Markdown Mailable classes explained
Lecture 352 Creating the Markdown Mailable class
Lecture 353 Custom Markdown e-mail component and styling
Lecture 354 Rendering e-mail previews in browser
Section 45: OLD CONTENT: Queues and Background Processing
Lecture 355 Queues and background processing introduction
Lecture 356 Configuring queues, creating and running the first job
Lecture 357 Optional e-mail queuing and execution delay
Lecture 358 Dealing with failed jobs
Lecture 359 Creating and dispatching custom jobs
Lecture 360 Implementing custom job that dispatches other jobs
Lecture 361 Rate Limiting queues
Lecture 362 Named queues and prioritizing
Section 46: OLD CONTENT: Observers, Events, Listeners, Subscribers
Lecture 363 Model Observers
Lecture 364 Events and Listeners
Lecture 365 Practical: Custom Event and Listener
Lecture 366 Second example of Event and Listener
Lecture 367 Logging basics in Laravel
Lecture 368 Handling built-in Laravel events with Subscriber
Section 47: OLD CONTENT: Localization (Translations)
Lecture 369 Localization introduction and demo
Lecture 370 Configuring locale and translation overview
Lecture 371 Translating plural forms, passing data
Lecture 372 Storing translations in JSON
Lecture 373 Translating the application
Lecture 374 Storing user preffered language in database
Lecture 375 Creating custom Locale Middleware
Lecture 376 Adding language to URL through Apache configuration
Section 48: OLD CONTENT: Service, Service Container, Facades, Contracts
Lecture 377 What is a Service and creating a custom one
Lecture 378 Service Container in practice
Lecture 379 Basic Dependency Injection
Lecture 380 Dependency Injection and Contracts
Lecture 381 Contracts explained
Lecture 382 Facades explained
Section 49: OLD CONTENT: Model serialization and Postman
Lecture 383 Postman - a quite long introduction
Lecture 384 How Model serialization works
Lecture 385 Hiding model attributes
Lecture 386 Serializing model relations
Section 50: OLD CONTENT: API Resources
Lecture 387 API Resources introduction
Lecture 388 Serializing model relations using a Resource class
Lecture 389 Limiting serialization only to eager loaded relations
Lecture 390 Conditional serialization of properties
Section 51: OLD CONTENT: API in Laravel
Lecture 391 API routes and controllers
Lecture 392 Practice defining API routes
Lecture 393 Returning a resource collection and response wrapping
Lecture 394 Collection pagination
Lecture 395 Collection pagination and custom parameters
Lecture 396 Storing a new resource
Lecture 397 API Tokens explained and implemented
Lecture 398 Returning one, updating and deleting resources
Lecture 399 Handling 404 (resource not found)
Lecture 400 API Authorization
Section 52: OLD CONTENT: Testing APIs
Lecture 401 Testing API GET methods, verifying JSON structure
Lecture 402 Testing API GET methods, verifying JSON structure II
Lecture 403 Test API storing (POST) resources, authentication and validation
This course is tailored for budding PHP developers seeking their first in-depth exposure to a web development framework