0、最少必要知識php
0.1 route 配置 /routes/web.php 文件 Route::get('/','SitesController@index'); 0.2 在 controller 的 index 方法體中與視圖交互 // url 視圖路徑, 默認 prefix 爲 resources/views/ // data 可傳數組/ 二維用 compact('data') return view(url, data) 0.3 視頻裏的流程控制與循環 0.3.1 @if @foreach 0.3.2 @endif @endforeach 0.4 Migration 數據庫一鍵遷移,數據庫生成經過migration進行 0.5 Eloquent ORM 對象關係映射,將數據表映射爲對象 0.6 model 的兩種常見用法 0.6.1 setAttribute, 增長和修改用 0.6.2 queryScope, 查詢設置過濾條件 0.7 表單驗證,能夠經過 Request 類完成 0.8 編輯文章,Form::model() 0.9 Restful API,操做與之對應的 HTTP 傳值方式 增 post 刪 delete 改 patch/put 查 get
一、從安裝到啓動(mac)html
1.1 安裝,版本號 Laravel Framework 5.8.3 1.1.1 使用 composer 全局安裝,會生成 laravel 命令 composer global require "laravel/installer" 1.1.2 Debug, 運行 laravel 命令 若是找不到命令,建立軟連接 ln -s ~/.composer/vendor/bin/laravel /usr/local/bin/laravel 1.2 建立項目 1.2.1 方法一:使用 laravel 安裝 laravel new my-project 1.2.1 方法二:使用 composer 安裝 composer create-project laravel/laravel my-project 1.3 啓動 1.3.1 方法一:使用 php 內置服務器 php -S localhost:8888 -t public 1.3.2 方法二:使用 laravel 提供的命令行工具 php artisan serve
二、路由及其餘目錄mysql
| - routes | - - web.php web 的路由,可指指向控制器方法 | - app | - - Http | - - - Controllers | - - - - SitesController 控制器 | - resources | - - views 視圖文件 | - env 配置參數,如 mysql 相關配置
三、能夠將路由交給控制器,生成控件器laravel
web.php 文件裏的寫法以下: 3.1 Route::get('/','SitesController@index'); 3.2 註冊標準路由 Route::resource('articles', 'ArticlesController'); 3.3 查看當前路由 php artisan route:list
四、向視圖傳遞變量,blade 模板的用法git
4.1 controller 文件的方法中 4.1.1 方法一,傳鍵值 view('index')->with(key, value); 4.1.2 方法二,傳一維數組,在模塊中能夠直接用其中的元素 view('index', $data) // $data=['name'=>'Pual', 'sex'=>'male'] 4.1.3 方法三,傳二維數組,視圖中須要先遍歷 view('index', compact($data)) 4.2 index.blade.php 在視圖文件中使用變量 4.2.1 轉義,至關於 php 的單引號,相似於 Vue {{ $key }} 4.2.2 不轉義,至關於 php 的雙引號 {!! $key !!}
五、模板github
5.1 定義視圖模板 app.blade.php @yield('content') 5.2 繼承模板 @extends('app') @section('content') This is a test @stop
六、模板判斷web
@if($name == 'Paul') This is Paul @else This is not Pual @endif
七、循環輸出sql
@foreach($people as $person) {{$person}} @endforeach
八、配置數據庫
8.1 文件位置 .env
九、Migration 數據庫的版本控制,針對數據的遷移數組
9.1 同步已經有的表 php artisan migrate 9.2 建立表 php artisan make:migration create_articles_table --create='articles' 9.3 爲已有表添加字段 php artisan make:migration add_intro_column_to_articles --table=articles
十、Eloquent 是 laravel 的 ORM(對象關係映射)
10.1 建立model php artisan make:model Articles 10.2 model 關聯 數據庫
十一、簡單 Blog,的幾個知識點
11.1 視圖中url連接,拼接跳轉連接,並帶參數 {{ url('url', $para) }} 11.2 接收參數 11.2.1 設置帶參路由,web.php ,關鍵點:{id} Route::get('articles/{id}', 'ArticlesController@show'); 11.2.2 在 controller 中接收參數 function show($id){...}
十二、laravel Forms 使用
12.1 安裝 composer 依賴包,laravel 官方依賴包 composer require laravelcollective/html 12.2 配置 config -> app.php 12.2.1 prividers 數組追加 Collective\Html\HtmlServiceProvider::class, 12.2.2 aliases 數組追回 'Form'=>Collective\Html\FormFacade::class, 'Html'=>Collective\Html\HtmlFacade::class 12.3 使用 12.3.1 表單開發提交數據 {!! Form::open(['url'=>'orders']) !!} {!! Form::close() !!} 12.3.2 表單綁定模型 {!! Form::model($order,['method'=>'patch', 'url'=>'orders/'.$order->id]) !!} {!! Form::close() !!} 12.4 Form 靜態方法有哪些? 參考網址:https://github.com/LaravelCollective/laravel-docs/blob/5.6/html.md
1三、setAttribute 與 queryScope,特定做用的函數
13.1 setAttribute 對數據庫相關字段作預處理,插入或者更新數據的時候用 public function setPublishedAtAttribute($data) { $this->attributes['published_at'] = Carbon::createFromFormat('Y-m-d', $data); } 12.2 queryScope 字段過濾條件,在查詢時使用 public function scopePublished($query) { $query->where('published_at', '<=', Carbon::now()); }
1四、Carbon 類 laravel 中默認的時間處理類
1五、表單驗證
15.1 使用 Request 類 15.1.1 建立 Request 類 php artisan make:request CreateOrderRequest 15.1.2 rules 驗證 public function rules() { return [ // | 分隔符,min:3 最少3個長度 'thing'=>'required|min:3', 'price'=>'required', 'note'=>'required', ]; } 15.2 validate 驗證 $this->validate($request, ['title'=>'required', 'content'=>'required']);
1六、編輯文章
16.1 顯示某條記錄 {!! Form::model($order,['method'=>'patch','url'=>'orders/'.$order->id]) !!} {!! Form::close() !!} 16.2 提交修改 method:patch 至關於 put,專門用來作局部修改
1七、用戶註冊和登陸
17.1 安裝 Auth 模塊 php artisan make:auth 17.2 訪問登陸 url/login