摘要:在文件的標(biāo)簽中加上以下代碼新手上路注冊(cè)登陸上面只是引用了一些簡(jiǎn)單的的,也沒(méi)什么難的,不用傷心。
Laravel身為最優(yōu)雅的PHP框架,很多學(xué)習(xí)PHP的小伙伴造就對(duì)Laravel垂涎欲滴。今天就來(lái)實(shí)現(xiàn)你的愿望,讓我們一起從零開始,利用Laravel實(shí)現(xiàn)Web應(yīng)用最常見(jiàn)的注冊(cè)和登錄功能!所有的課程源碼已放在Github上:laravel-start. Race Start !
首先我們來(lái)明確一下我們這個(gè)課程需要的東西:
Laravel 4.2
Bootstrap 3.3
Laravel就是我們關(guān)心的核心部分,Bootstrap用來(lái)快速設(shè)置一些前端的CSS樣式。
1.安裝Laravel簡(jiǎn)單說(shuō)明之后我們來(lái)進(jìn)入下一步,安裝Laravel,在這我們是通過(guò)Composer來(lái)安裝,打開命令行終端,執(zhí)行:
cd Sites
Sites就是web應(yīng)用的根目錄,你可以根據(jù)需要換成你自己的根目錄,然后再執(zhí)行:
composer create-project laravel/laravel laravel
laravel就是你的應(yīng)用目錄名,你可以取一個(gè)你喜歡的名字。執(zhí)行上面的命令之后,等一段時(shí)間(畢竟在國(guó)內(nèi),網(wǎng)速是個(gè)大坑),安裝完以后你會(huì)得到這一堆目錄:
我們主要操作models和 controllers和 views這三個(gè)目錄:這就是MVC的構(gòu)成啊!
2.安裝Bootstrap然后再命令行執(zhí)行:
cd laravel/public/packages
這里的laravel與上面的應(yīng)用目錄對(duì)應(yīng),如果你在安裝的時(shí)候用了其他的名字,請(qǐng)對(duì)應(yīng)換上。來(lái)到packages這個(gè)目錄后安裝Bootstrap,直接在命令行執(zhí)行:
bower install bootstrap
這個(gè)比較快,然后等這個(gè)下載完之后你就會(huì)得到最新的穩(wěn)定版Bootstrap。在目錄packages目錄下的 bower_components/bootstrap/dist/這里就包含了Bootstrap的css,js,fonts這三個(gè)我們?cè)陂_發(fā)過(guò)程中經(jīng)常用到的樣式文件,js和字體文件。成功后你將看到這個(gè):
注:這里使用的bower這個(gè)工具,它負(fù)責(zé)管理一些前端的包。
到這里,我們的前期工作已經(jīng)準(zhǔn)備好了。不過(guò)在進(jìn)入下一步之前,我們得先確保我們的laravel/app/storage目錄有相應(yīng)的寫入權(quán)限,所以回到laravel目錄,如果你在安裝完bower之后沒(méi)動(dòng)過(guò)命令行,可以直接通過(guò):
cd ../../
回到laravel目錄,然后在執(zhí)行:
chmod -R 755 app/storage
這一步搞定之后我們就可以進(jìn)入真正的開發(fā)階段了。
3.配置數(shù)據(jù)庫(kù)并建表:在開始配置之前,我們要為我們的laravel應(yīng)用創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),我將它命名為laravel-start,
然后在編輯器中打開app/config/database.php文件,對(duì)相應(yīng)的數(shù)據(jù)庫(kù)配置項(xiàng)填入,如:
"default" => "mysql", // 數(shù)據(jù)庫(kù)連接 "connections" => array( "mysql" => array( "driver" => "mysql", "host" => "127.0.0.1", "database" => "laravel-start", "username" => "root", "password" => "", "charset" => "utf8", "collation" => "utf8_unicode_ci", "prefix" => "", ),
連接完數(shù)據(jù)庫(kù)之后,還得創(chuàng)建一個(gè)Users表,你可以直接在數(shù)據(jù)庫(kù)中創(chuàng)建Users表,也可以利用Laravel的artisan來(lái)創(chuàng)建,這里我們使用Laravel的artisan來(lái)建表,順道了解一點(diǎn)點(diǎn)關(guān)于Laravel migrate的知識(shí)。執(zhí)行下面語(yǔ)句:
php artisan migrate:make create-users-table
以上命令會(huì)創(chuàng)建一個(gè)migrate文件(文件位于app/database/migrations目錄下),這個(gè)文件的名字就是create-users-table,然后我們可以通過(guò)編輯剛剛生成的migrate文件來(lái)創(chuàng)建Users表。
public function up() { Schema::create("users", function($table){ $table->increments("id"); $table->string("username", 20); $table->string("email", 100)->unique(); $table->string("password", 64); $table->string("remember_token",62)->default("default"); $table->timestamps(); }); }
上面的方法使用了laravel的Schema Builder類,上面這段代碼使用up()方法的創(chuàng)建一個(gè)users表,這個(gè)表里有5個(gè)字段:id自增 ,username長(zhǎng)度20以內(nèi) ,email長(zhǎng)度100以內(nèi)并且是唯一的 ,password長(zhǎng)度64以內(nèi) ,remember_token是為了在登錄的時(shí)候更方便實(shí)用,Laravel會(huì)自動(dòng)將token值填充進(jìn)來(lái),但在最開始你必須設(shè)一個(gè)默認(rèn)值,timestamp當(dāng)前的時(shí)間戳。在這我們需要注意的一點(diǎn)是:最好在down()加上下面的代碼,以防某天我們需要?jiǎng)h除Users這個(gè)表。
public function down() { Schema::drop("users"); }
上面的都做好以后,執(zhí)行一下下面這一句神奇的命令:
php artisan migrate
有圖有真相:
終于,我們的前奏搞完了,可以正式來(lái)魯Laravel了。
4.啟動(dòng)服務(wù)來(lái)試試直接在laravel目錄執(zhí)行:
php artisan serve
打開瀏覽器,輸入localhost:8000,回車,Bingo!
OK,先給自己三十秒的掌聲時(shí)間,如果你順利地走到了這一步的話。恭喜你,你已經(jīng)進(jìn)入Laravel的大門,更多驚喜我們?cè)僖灰坏纴?lái).....
好了,我們現(xiàn)在開始了,首先在app/views/文件夾下創(chuàng)建一個(gè)layouts文件夾,再再這個(gè)文件夾下新建一個(gè)php文件,命名為main.blade.php,在這個(gè)文件里寫上下面這些代碼:
發(fā)現(xiàn)Laravel 4之美
PS:layouts文件夾通常用來(lái)存放視圖文件的功用部分,比如一些網(wǎng)頁(yè)的頭部
和尾部,這里就是存放了頭部 部分
感覺(jué)main.blade.php的名字很奇怪?不用擔(dān)心,Laravel的視圖文件命名遵循filename.blade.php的規(guī)則,因?yàn)長(zhǎng)aravel是用Blade這個(gè)模板引擎解析的,你不用深究,就照著上面的名字規(guī)則來(lái)命名視圖文件就OK
為視圖文件添加CSS樣式:
發(fā)現(xiàn)Laravel 4之美 {{HTML::style("packages/bower_components/bootstrap/dist/css/bootstrap.min.css") }} {{ HTML::style("css/main.css")}}
沒(méi)錯(cuò),就是在原來(lái)的main.blade.php的基礎(chǔ)上添加兩行代碼;然后我們來(lái)創(chuàng)建我們的main.css,這個(gè)主要是用來(lái)放我們自己定義的樣式。在public文件夾下創(chuàng)建css文件夾,在css文件夾創(chuàng)建main.css文件,大功告成。
添加導(dǎo)航欄。在main.blade.php文件的標(biāo)簽中加上以下代碼:
上面只是引用了一些簡(jiǎn)單的Bootstrap的class,也沒(méi)什么難的,不用傷心。
到這里基本的功用部分就結(jié)束了,但是我們的追求從不會(huì)這么low,所以為了更好地與用戶交互,我們希望在用戶進(jìn)行某個(gè)操作之后給出一些反饋,比如注冊(cè)成功的時(shí)候說(shuō):少年,你已成功注冊(cè)本站,恭喜恭喜。等,于是乎,我們?cè)贋?b>main.blade.php添加一點(diǎn)點(diǎn)代碼:
@if(Session::has("message")){{ Session::get("message") }}
@endif
為了現(xiàn)實(shí)這些反饋信息給用戶,我們得使用Session::get("message")方法,當(dāng)然,我們得首先從邏輯上判斷一下這個(gè)message是否存在,所以這里用了一個(gè)簡(jiǎn)單的if判斷。
在blade引擎的視圖中if 的使用格式是
@if(conditions) #code... @endif
到這里就結(jié)束了么?NO,如果到這里就結(jié)束的話,其他的視圖文件是怎么插入main.blade.php的之間的呢?所以,不要忘了還有一個(gè)重要的事:{{ $content }},于是乎,上面的代碼就變成了這樣:
@if(Session::has("message")){{ Session::get("message") }}
@endif {{ $content }}
{{ $content }}在這里就是表示其他的視圖文件內(nèi)容,你可以在理解上將其他的視圖當(dāng)作一個(gè)字符串來(lái)理解,只不過(guò)這個(gè)字符串很長(zhǎng),而且恰好包含了HTML標(biāo)簽而已。下面你將體會(huì)到這種想法。
創(chuàng)建完我們的公用視圖main.blade.php后,我們先來(lái)為main.css添加我們的CSS樣式:
body { padding-top: 60px; } .form-signup, .form-signin { margin: 0 auto; }
因?yàn)槲覀冊(cè)?b>main.blade.php文件中使用了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。 轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/20934.html
摘要:前言年底了不太忙,最近一段時(shí)間也一直在研究,就想寫篇關(guān)于比較深一點(diǎn)的教程系列啥的,于是就找到站長(zhǎng)給開了寫教程的渠道。優(yōu)點(diǎn)的就是為藝術(shù)家創(chuàng)造的框架,它也是工程化的趨勢(shì)。項(xiàng)目維護(hù)方便也是事實(shí)。如果有遇到問(wèn)題可以直接在教程下面留言。 前言 年底了不太忙,最近一段時(shí)間也一直在研究laravel,就想寫篇關(guān)于laravel比較深一點(diǎn)的教程系列啥的,于是就找到站長(zhǎng)給開了寫教程的渠道。由于第一次寫,...
摘要:最佳實(shí)踐良好的編碼規(guī)范單元測(cè)試持續(xù)集成文檔,從一開始就形成良好的編碼習(xí)慣。真實(shí)的電商業(yè)務(wù)所有的業(yè)務(wù)需求來(lái)自真實(shí)的客戶,并且線上良好運(yùn)營(yíng)中。 重要通知: Laravel + 小程序的開源電商版本源碼已經(jīng)在 github 上拉,歡迎提交 issue 和 star :) 開源電商 Server 端: Laravel API源碼 開源電商 client 端:小程序源碼 iBrand 簡(jiǎn)介...
摘要:原文發(fā)表在我的個(gè)人網(wǎng)站系列入門教程二最適合中國(guó)人的教程本教程示例代碼見(jiàn)大家在任何地方卡住,最快捷的解決方式就是去看我的示例代碼。 原文發(fā)表在我的個(gè)人網(wǎng)站:Laravel 5 系列入門教程(二)【最適合中國(guó)人的 Laravel 教程】 本教程示例代碼見(jiàn):https://github.com/johnlui/Learn-Laravel-5 大家在任何地方卡住,最快捷...
摘要:被稱為簡(jiǎn)潔優(yōu)雅的開發(fā)框架,但第一次接觸此框架的人有不少都卡在了安裝上,其實(shí)在下只需要很簡(jiǎn)單的幾步就可以搞定,這里我們以下的環(huán)境為例。 Laravel 被稱為簡(jiǎn)潔、優(yōu)雅的PHP開發(fā)框架,但第一次接觸此框架的人有不少都卡在了安裝上,其實(shí)在 Linux 下只需要很簡(jiǎn)單的幾步就可以搞定,這里我們以 CentOS 下 PHP + Nginx + Mysql 的環(huán)境為例。 首先需要了解 Larav...
閱讀 2910·2021-11-24 09:39
閱讀 1168·2021-11-02 14:38
閱讀 4163·2021-09-10 11:26
閱讀 2753·2021-08-25 09:40
閱讀 2314·2019-08-30 15:54
閱讀 485·2019-08-30 10:56
閱讀 2751·2019-08-26 12:14
閱讀 3220·2019-08-26 12:13