本篇內(nèi)容主要講解“Laravel開發(fā)實例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Laravel開發(fā)實例分析”吧!
站在用戶的角度思考問題,與客戶深入溝通,找到訥河網(wǎng)站設(shè)計與訥河網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋訥河地區(qū)。
準備開發(fā)環(huán)境
原教程使用官方推薦的Homestead開發(fā)環(huán)境。由于最近Docker開始流行,并且也有相應(yīng)的Laravel對應(yīng)的容器。所以本文以Laradock作為開發(fā)環(huán)境。
安裝Laradock
克隆Laradock倉庫到本地。
gitclonehttps://github.com/laradock/laradock.git
最終文件夾結(jié)構(gòu)應(yīng)該像這樣:
+laradock
+project-z
配置Laradock
復(fù)制配置文件
bashcdlaradockcpenv-example.env#復(fù)制配置文件
進入Workspace
bash#運行Laradockdocker-composeup-dnginx#進入LaradockWorkspacedocker-composeexec--user=laradockworkspacebash#ForGitBashwinptydocker-composeexec--user=laradockworkspacebash
配置國內(nèi)加速鏡像
#Workspace
composerconfig-gl#查看composer設(shè)置
composerconfig-grepo.packagistcomposerhttps://mirrors.aliyun.com/composer/#設(shè)置國內(nèi)加速鏡像
構(gòu)建頁面
創(chuàng)建應(yīng)用
#Workspace
composercreate-projectlaravel/laravelweibo--prefer-dist"5.8.*"
配置Nginx域名
cpnginx/sites/laravel.conf.examplenginx/sites/weibo.conf
修改新復(fù)制出的配置文件里的路徑為將要創(chuàng)建的項目路徑。
修改Host
編輯C:/Windows/System32/Drivers/etc/hosts
增加一條127.0.0.1weibo.test
.env文件
.env文件包含了項目的一些設(shè)置,我們進行一些修改。
APP_NAME=Weibo
APP_ENV=local
APP_KEY=base64:nsvnM5l0N5cOzT/dFqfUoYlkYffhDPnKPuYU4AWMdPc=
APP_DEBUG=true
APP_URL=http://weibo.test
為了方便,我們在本地使用sqlite數(shù)據(jù)庫。
注釋掉原有DB相關(guān)設(shè)置,添加下面內(nèi)容
DB_CONNECTION=sqlite
DB_DATABASE=/database/database.sqlite
并且創(chuàng)建相應(yīng)數(shù)據(jù)庫文件
touchdatabase/database.sqlite
使用Git管理代碼
cdweibo
gitinit
gitadd-A
gitcommit-m"Initialcommit"
上傳到Gitee
gitremoteaddorigingit@gitee.com:codingbit/weibo.git
gitpush-uoriginmaster
使用Heroku部署應(yīng)用
需要先安裝heroku-cli工具。
創(chuàng)建HerokuApp
herokucreate
配置Procfile文件:
echoweb:vendor/bin/heroku-php-apache2public/>Procfile
gitadd-A
gitcommit-m"ProcfileforHeroku"
gitpush
herokubuildpacks:setheroku/php
生成AppKey
#Workspace
$phpartisankey:generate--show
base64:ta1aE+E8kuyDFlURbUrHEtL4HY71WtoffyNgUKldMWw=
#Host
herokuconfig:setAPP_KEY=base64:ta1aE+E8kuyDFlURbUrHEtL4HY71WtoffyNgUKldMWw=
推送到Heroku上
gitpushherokumaster
上傳成功,訪問地址https://cbit-weibo.herokuapp.com/即可看到效果。
統(tǒng)一代碼風(fēng)格
通過編輯器的EditorConfig插件,統(tǒng)一代碼風(fēng)格。
.editorconfig
root=true
[*]
charset=utf-8
end_of_line=lf
insert_final_newline=true
indent_style=space
indent_size=4
trim_trailing_whitespace=true
[*.md]
trim_trailing_whitespace=false
[*.yml]
indent_size=2
[*.{js,html,blade.php,css,scss}]
indent_style=space
indent_size=2
靜態(tài)頁面
架子搭好了,開始學(xué)習(xí)創(chuàng)建基礎(chǔ)靜態(tài)頁面。
新建分支
gitcheckoutmaster
gitcheckout-bstatic-pages
移除無用視圖
默認的welcome.blade.php視圖文件,沒有用,刪掉。
rmresources/views/welcome.blade.php
配置路由
routes/web.php
Route::get('/','StaticPagesController@home');
Route::get('/help','StaticPagesController@help');
Route::get('/about','StaticPagesController@about');
get方法有兩個參數(shù):1.訪問的URL;2.操作的控制器及對應(yīng)的方法
在Laravel中我們較為常用的幾個基本的HTTP操作分別為GET、POST、PATCH、DELETE。
GET常用于頁面讀取
POST常用于數(shù)據(jù)提交
PATCH常用于數(shù)據(jù)更新
DELETE常用于數(shù)據(jù)刪除
其中,PATCH和DELETE是不被瀏覽器所支持的,我們可以通過在提交表單中做一些手腳,讓服務(wù)器以為這兩個動作是從瀏覽器中發(fā)出的一樣。
生成靜態(tài)頁面控制器
生成靜態(tài)頁面控制器:
phpartisanmake:controllerStaticPagesController
添加三個方法
classStaticPagesControllerextendsController
{
publicfunctionhome()
{
return'主頁';
}
publicfunctionhelp()
{
return'幫助頁';
}
publicfunctionabout()
{
return'關(guān)于頁';
}
}
添加靜態(tài)頁面視圖
控制器中渲染視圖,需要用到view方法,view方法接收兩個參數(shù),第一個參數(shù)是視圖的路徑名稱,第二個參數(shù)是與視圖綁定的數(shù)據(jù),第二個參數(shù)為可選參數(shù)。
app/Http/Controllers/StaticPagesController.php
classStaticPagesControllerextendsController
{
publicfunctionhome()
{
returnview('static_pages/home');
}
publicfunctionhelp()
{
returnview('static_pages/help');
}
publicfunctionabout()
{
returnview('static_pages/about');
}
}
默認情況下,所有的視圖文件都存放在resources/views文件夾下。
下面創(chuàng)建三個視圖。
resources/views/static_pages/home.blade.php
resources/views/static_pages/help.blade.php
resources/views/static_pages/about.blade.php
使用通用視圖
使用通用視圖避免代碼重復(fù)的問題。
resources/views/layouts/default.blade.php
@yield('content')
Laravel的Blade模板支持繼承,這意味多個子視圖可以共用父視圖提供的視圖模板。
修改視圖模板。
resources/views/static_pages/home.blade.php
@extends('layouts.default')
@section('content')
@stop
resources/views/static_pages/help.blade.php
@extends('layouts.default')
@section('title','幫助')
@section('content')
@stop
resources/views/static_pages/about.blade.php
@extends('layouts.default')
@section('title','關(guān)于')
@section('content')
@stop
Git代碼版本控制
接著讓我們將本次更改納入版本控制中:
gitadd-A
gitcommit-m"基礎(chǔ)頁面"
提交代碼
將Git切換到master分支,并合并static-pages分支上的修改:
gitcheckoutmaster
gitmergestatic-pages
最后將代碼推送到GitHub和Heroku上:
gitpush#推送到Gitee
gitpushherokumaster#上線到Heorku
到此,相信大家對“Laravel開發(fā)實例分析”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!