Laravel Beginner笔记

Laravel 5.7+ Beginner 笔记

如果以下内容有任何错误,欢迎指出!以下所有的笔记都是本人自己一边网上搜查一边自学的内容,目前正在尝试自己做一个full stack project用PHP来当后端。12/28/2018

重点笔记

Eloquent is Laravel’s default ORM (object-relational mapper). Eloquent makes it painless to retrieve and store data in your database using clearly defined “models”. Usually, each Eloquent model corresponds directly with a single database table.
Eloquent model跟数据库table同一个意思

We do not have to explicitly tell the Eloquent model which table it corresponds to because it will assume the database table is the plural form of the model name.
例子:Model Name: Stock
Database/Schema name: stocks

In Laravel, all HTML templates are stored in the resources/views directory.
Laravel是一个PHP框架based on MVC(Model View Controller),因为PHP本身的codebase是没有任何architecture的,所以用laravel可以让程序员更方便(特别是比较大的project的时候)
MVC


Blade

在浏览许多laravel guide的时候还注意到一个叫blade.php的东西,blade是一个templating engine,所以当我们正在做有关于前端的东西的时候,blade有一个inheritance views的功能可以更加方便我们前端的设计。

Blade is the simple, yet powerful templating engine provided with Laravel. Unlike other popular PHP templating engines, Blade does not restrict you from using plain PHP code in your views. In fact, all Blade views are compiled into plain PHP code and cached until they are modified, meaning Blade adds essentially zero overhead to your application. Blade view files use the .blade.php file extension and are typically stored in the resources/views directory.

有三个需要知道的知识点

  • @include
    1. @include is used for reusable HTML just like a standard PHP include. It does not have that parent/child relationship like @yield and @section.
    2. 相当于Java的import相当于Java的import
  • @yield
    1. @yield is mainly used to define a section in a layout.
    2. The layout usually contains your HTML, head, body, header and footers. You define an area (@yield) within the layout that your pages which are extending the template will put their content into.
    3. 把一个区域规划出来好方便parent/child随时调用这部分的代码(HTML/CSS/layout的代码)
  • @session
    1. When that layout is extended with @extends, you can define what goes in that section with the @section directive in your views.
    2. 相当于Java里面的implements继承关系的时候需要用到的关键词,不同的是可以inherit部分的代码(先定义好的session)而不需要继承一整个class

Laravel File Structure

Folder NamePurpose
Appcontain the most significant stuff, especially “http” folder that has controller, middleware, models and the ‘route.php’ file (this changed in Laravel 5.7)
Bootstrapneeded for startup of Laravel
Databasemigration and seeds
Configconfiguration files, such as session configuration or authentication configuration
Public‘.htaccess’, ‘robots.txt’, ‘favicon.ico’, and ‘index.php’ all these files play an important roles in keeping your project in search engines
Resourcesviews, where the viewable PHP/HTML codes are stored
Storagecache and log files are kept here
Testunit testing purposes
Vendorfor third party packages that Laravel uses

Laravel RESTful structures

NamePurpose
get()get a request
post()send a request
patch()
put()
delete()
any()register any route that responds to any HTTP verbs
groupkeep a group of routes to the same directory together, such as group([‘prefix]’=>‘home’)

Named routes

假如想要用session来展示不同的内容给还没登录的用户

// reach the login page
Route::get('/', function() {
	return link_to_route('session/create', 'Login');
});
// name route
Route::get('session/create', ['as'=>'create', 'use'=>'SessionController@create']);
// is equivalent to
Route::get('/', function(){
	return route('create');
}); 

Commands

  • 建立一个新的laravel application:
laravel new laravel-project
  • 运行php:
php artisan serve
  • 建立一个model
php artisan make:model newModel
  • 建立一个controller
php artisan make:controller ModelController --resource
  • Register for multiple routes
php artisan route:list
  • Migrate到数据库能理解的代码:
php artisan make:migration create_newmodels_table
  • Migrate当前migration folder里面所有的schema:
php artisan migrate

关于Model

建立完model之后,在app文件夹可以找到所有创建的models
在以下例子里面,$fillable里面的内容相当于mysql里面的column

    <?php

    namespace App;

    use Illuminate\Database\Eloquent\Model;

    class Product extends Model {

        protected $fillable = [
           'name',
           'count',
           'price',
           'description',
        ];

    }

更多关于schema可读这里


关于Controller

blah.


关于Migration

运行了make migration的指令之后,在database/migration文件夹下会看到一个文件*_created_newmodels_table的文件,看起来可能是这样:

    <?php

    [...]

    class CreateProductsTable extends Migration
    {
        public function up()
        {
            Schema::create('products', function (Blueprint $table) {
                $table->increments('id');
                $table->string('name');
                $table->text('description');
                $table->integer('count');
                $table->integer('price');
                $table->softDeletes();
                $table->timestamps();
            });
        }

        public function down()
        {
            Schema::dropIfExists('products');
        }
    }

在up函数里面这个schema对应着mysql会创建一个products的table,里面有auto increment的id,string name,text description, etc… 的columns


Citation 部分内容转自于

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Laravel 5.2 初学者指南 Laraboot: Laravel 5 For Beginners Bill Keck This book is for sale at http://leanpub.com/laravel-5-for-beginners-laraboot This version was published on 2016-04-04 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. © 2015 - 2016 Bill Keck Contents Chapter 1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 What Makes The Laravel Framework Special? . . . . . . . . . . . . . . . . . . . . . . . . 3 Upsides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Downsides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Why I chose Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Why I’m Writing This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Artisan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 MySql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Minimum PHP Skills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 W3 Schools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 MInimum HTML and CSS skills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Minimum Javascript Skills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Errata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Contact Bill Keck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Laraboot on Github . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Chapter 2: The Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 The Fun Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MAC or Windows? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MAMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Composer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Minimum Version of PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Homebrew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Git . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Command Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Chapter 3: Installation of Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Composer install of Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 CONTENTS Create Project in IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Setup Local Host file: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Vhost Entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 httpd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 MOD Rewrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Restart Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Chapter 4: Let’s Get Started With Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Set Up The Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Initial Commit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Diving Into Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Setup the DB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 .env . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Application Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Basic Stitching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 The Style Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Unit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Creating a Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Creating a Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Artisan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 RESTful pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Namespaces and Use Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Index Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Blade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Creating A Master Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 CDN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 View Partials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Full Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Chapter 5: User Registration And Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 User Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Migrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Installing the Dbal Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Make Auth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 AuthController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Traits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Gravatar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Facades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 CONTENTS Bootstrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Pages Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 New Nav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Auth Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Auth Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 emails view folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 password.blade.php. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Config Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 passwords view folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 email.blade.php view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 reset.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Auth View Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 register.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 login.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 Chapter 6: Working with the RESTful Pattern . . . . . . . . . . . . . . . . . . . . . . . . . 121 Sweet Alert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Model Factory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Route Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 RESTful Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Collective HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Errors List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 Store Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Die and Dump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Index Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Datatables Jquery Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Datatables CDN Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Datatables CSS CDN Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 The API Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Api/Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Test the API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Index View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Datatable Partial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Datatable-script Partial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 Slugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Changing the Store Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Create the Slug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Changing the Create Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 Add Auth Use Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 CONTENTS Change $fillable Property on Widget Model . . . . . . . . . . . . . . . . . . . . . . . . . 171 Basic Relationships . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Change widgetData Method on ApiController . . . . . . . . . . . . . . . . . . . . . . . . 173 Change datatable.blade Headings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Change datatable-script.blade.php to Add Columns . . . . . . . . . . . . . . . . . . . . . 174 Add Middleware to WidgetController . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Change Routes to Widget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Show Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 Accessors and Mutators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Edit Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 Update Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Destroy Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 404.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Nav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 Chapter 7: Access Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 OwnsRecord Trait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Modify User Table Migration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 User $fillable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Admin Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 AllowIfAdmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 isAdmin Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Admin Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 NoActiveAccountException . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 Modifying the Auth Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 AuthController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Update Users Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Registration Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 register.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Users Migration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 Update User $fillable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 AuthController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Create Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Terms Of Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Privacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 Chapter 8: Socialite - One Click Facebook Login . . . . . . . . . . . . . . . . . . . . . . . . 261 Facebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Modify Users Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 CONTENTS Mass Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Social Routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 session.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 InvalidStateException . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 Set up Facebook App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Step 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Step 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Step 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Step 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Step 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Step 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 Step 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Step 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Step 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Step 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Step 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 Step 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Step 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Integrating Socialite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 AuthController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Navigation To Facebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 Chapter 9: Profile, Settings and Admin Dash . . . . . . . . . . . . . . . . . . . . . . . . . . 309 Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 my-profile and show-profile Routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Add Profile to Nav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 Profile Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Show View - Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Index View - Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Edit View - Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 API Route for Profile: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 profileData Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 Datatable-script - Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 Datatable View - Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 Users For Admin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 UserController.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 UserRequest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 User Model changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 HasModelTrait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 Index View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 Datatable View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 Datatable-script View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 CONTENTS Show View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Edit View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 Navigation to Users & Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 Settings Routes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 SettingsController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 Create Settings View Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 Edit View For Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 Add Settings To Nav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Admin Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 Add Facebook sign in buttons to Login and Register Views . . . . . . . . . . . . . . . . . 388 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 Chapter 10: Working With Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 Create imgs, marketing-images, and thumbnails folder. . . . . . . . . . . . . . . . . . . . 392 Create Image Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 Show Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 Add Accessor Methods to MarketingImage Model . . . . . . . . . . . . . . . . . . . . . . 423 show view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 Edit view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 Edit Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 Edit Image Request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 Update method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Destroy Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 Api route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 API Controller Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 Index method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443 index view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 datatable view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 datatable-script.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Add Nav To Marketing Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 Carousel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 Pages Index View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 Update slider.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 image_weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461 Modify MarketingImageController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 CreateImageRequest and EditImageRequest . . . . . . . . . . . . . . . . . . . . . . . . . 463 Marketing Image Create and edit Views . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 MarketingImage Show View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 marketingImageData API Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 Datatable View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 datatable-script.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 PagesController Index Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 CONTENTS grid.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 nav.blade.php . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 Chapter 11: Making a Custom Artisan Command . . . . . . . . . . . . . . . . . . . . . . . 470 Make Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 Handle Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 makeTraitDirectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值