Home Page Icon
Home Page
Table of Contents for
Table of Contents
Close
Table of Contents
by Christopher John Pecoraro
Mastering Laravel
Mastering Laravel
Table of Contents
Mastering Laravel
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Designing Done Right with phpspec
A new era
A leaner app
PSR
TDD done right
PHPUnit
phpspec
Entity creation
The MyCompany database schema
Specifying with phpspec
Red, green, refactor
Tidying things up
Controllers
The command bus
Summary
2. Automating Tests – Migrating and Seeding Your Database
Using Laravel's migration feature
An example of migration
Creating the table
The Laravel migration magic
$table->timestamps();
From schema to migration
Composer's require-dev command
Laravel's providers array
The composer update command
Generating the migrations
Creating seeds
Database testing with PHPUnit
Running PHPUnit
Functional testing with Behat
Summary
3. Building Services, Commands, and Events
Request routing
User stories
User stories to code
The controller
Searching for the room
Controller to command
Command to event
The ReserveRoomCommandHandler class
Event to handler
Queued event handlers
The waiting list command
The queued commands
The console command
The command scheduler
Summary
4. Creating RESTful APIs
RESTful APIs in Laravel
Essential CRUD
Bonus features
Controller creation
CRUD(L) by example
cRudl – read
crudL – list
Pagination
Crudl – create
crUdl – update
cruDl – delete
Model binding
Read revisited
List revisited
Update revisited
Delete revisited
Moving beyond CRUD
Nested controllers
Accommodation hasMany rooms
Room belongsTo accommodation
Eloquent relations
Nested update
Nested create
Eloquent model casting
Route caching
5. Using the Form Builder
History
Installing the HTML package
Building web pages with Laravel
The master template
An example page
From static HTML to static methods
The form tag
The text input field
The label tag
Checkbox
The submit button
The anchor tag with links
Closing the form
The resultant form
Conclusion
Summary
6. Taming Complexity with Annotations
Annotations in other programming languages
Annotations in Java
Annotations in C#
Annotations in PHP
DocBlock annotations
DocBlock annotations in Laravel
Symfony
Zend
Laravel
Resource controller using DocBlock annotations
Scanning routes
Automatic scanning
Additional annotations
HTTP verbs
Other annotations
Using annotations in Laravel 5
Advantages
Conclusion
Summary
7. Filtering Requests with Middleware
The HTTP kernel
The basic middleware structure
Route middleware unravelled
Default middleware – the Authenticate class
Contracts
Handle
Custom middleware – Log
The Log model
Log model migration
Terminable middleware
Logging as terminable
Using middleware
Route groups
Multiple middleware in route groups
Middleware exclusion and inclusion
Conclusion
Summary
8. Querying the Database with the Eloquent ORM
Basic operations
Finding one
The where method
Chaining functions
Finding all
Eloquent relations
One-to-one
One-to-many
Many-to-many
Has-many-through
Polymorphic relations
Amenitiable relationships
The Amenity table structure
The Amenity model
The Accommodation model
The Room model
Many-to-many polymorphic relations
Has relationships
Eager loading
Conclusion
Summary
9. Scaling Laravel
Scalability issues
Towards the enterprise
Route caching
Illuminate routing
Lumen
Comparison between Laravel and Lumen
Lean application development
Read/write
Master table
Slave table
Configuring read/write
Creating a master/slave database configuration
Master server set up
Slave server set up
Summary
Towards automation
Getting started
Installing Node.js
Installing the Node.js package manager
Installing Gulp
Installing Elixir
Running Elixir
Setting up notifications
Combining CSS and JavaScript files with Elixir
Compiling with Laravel Elixir
Compiling Sass and Less
Compiling CoffeeScript
A summary of compiler commands
Putting everything together
Running tests with Elixir
PHPSpec
PHPUnit
Creating custom tasks
Setting up a file watcher
Additional Laravel Elixir tasks
Summary
Index
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Prev
Previous Chapter
Cover
Next
Next Chapter
Mastering Laravel
Table of Contents
Mastering Laravel
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Designing Done Right with phpspec
A new era
A leaner app
PSR
Installing and configuring Laravel
Installation
Configuration
Namespacing
TDD done right
PHPUnit
phpspec
Entity creation
The MyCompany database schema
Designing with phpspec
Specifying with phpspec
Red, green, refactor
Tidying things up
Controllers
The command bus
Summary
2. Automating Tests – Migrating and Seeding Your Database
Using Laravel's migration feature
An example of migration
Creating the table
The Laravel migration magic
$table->timestamps();
From schema to migration
Composer's require-dev command
Laravel's providers array
The composer update command
Generating the migrations
Migration anatomy
List tables
The softDelete and timestamp properties
Creating seeds
Database testing with PHPUnit
Running PHPUnit
Functional testing with Behat
Summary
3. Building Services, Commands, and Events
Request routing
User stories
User stories to code
The controller
Searching for the room
Controller to command
Command to event
The ReserveRoomCommandHandler class
Event to handler
Queued event handlers
The waiting list command
The queued commands
The console command
The command scheduler
Summary
4. Creating RESTful APIs
RESTful APIs in Laravel
Essential CRUD
Bonus features
Controller creation
CRUD(L) by example
cRudl – read
crudL – list
Pagination
Crudl – create
crUdl – update
cruDl – delete
Model binding
Read revisited
List revisited
Update revisited
Delete revisited
Moving beyond CRUD
Nested controllers
Accommodation hasMany rooms
Room belongsTo accommodation
Eloquent relations
Nested update
Nested create
Eloquent model casting
Route caching
Summary
5. Using the Form Builder
History
Installing the HTML package
Building web pages with Laravel
The master template
An example page
From static HTML to static methods
The form tag
The text input field
The label tag
Checkbox
The submit button
The anchor tag with links
Closing the form
The resultant form
Our example
Month select
Date select
Year select
Form macros
Conclusion
Summary
6. Taming Complexity with Annotations
Annotations in other programming languages
Annotations in Java
Annotations in C#
Annotations in PHP
DocBlock annotations
DocBlock annotations in Laravel
Symfony
Zend
Laravel
Resource controller using DocBlock annotations
Single method routing
Scanning routes
Automatic scanning
Additional annotations
HTTP verbs
Other annotations
Using annotations in Laravel 5
Advantages
Conclusion
Summary
7. Filtering Requests with Middleware
The HTTP kernel
The basic middleware structure
Route middleware unravelled
Default middleware – the Authenticate class
Contracts
Handle
Custom middleware – Log
The Log model
Log model migration
Terminable middleware
Logging as terminable
Using middleware
Route groups
Multiple middleware in route groups
Middleware exclusion and inclusion
Conclusion
Summary
8. Querying the Database with the Eloquent ORM
Basic operations
Finding one
The where method
Chaining functions
Finding all
Eloquent relations
One-to-one
One-to-many
Many-to-many
Has-many-through
Polymorphic relations
Amenitiable relationships
The Amenity table structure
The Amenity model
The Accommodation model
The Room model
Many-to-many polymorphic relations
Has relationships
Eager loading
Conclusion
Summary
9. Scaling Laravel
Scalability issues
Towards the enterprise
Route caching
Illuminate routing
Lumen
Comparison between Laravel and Lumen
Lean application development
Read/write
Master table
Slave table
Configuring read/write
Creating a master/slave database configuration
Master server set up
Slave server set up
Summary
10. Building, Compiling, and Testing with Elixir
Automating Laravel
Deployment
Development or deployment
Towards automation
From Gulp to Elixir
Getting started
Installing Node.js
Installing the Node.js package manager
Installing Gulp
Installing Elixir
Running Elixir
Setting up notifications
Combining CSS and JavaScript files with Elixir
Compiling with Laravel Elixir
Compiling Sass and Less
Compiling CoffeeScript
A summary of compiler commands
Putting everything together
Running tests with Elixir
PHPSpec
PHPUnit
Creating custom tasks
Setting up a file watcher
Additional Laravel Elixir tasks
Summary
Index
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset