Laravel - Artisan命令學(xué)習(xí)

本文以laravel5.4為例,建議剛開始學(xué)習(xí)Laravel框架的朋友先不使用Artisan進(jìn)行一次項(xiàng)目開發(fā)。

簡介

ArtisanLaravel 內(nèi)置的命令行接口想幻。它提供了一些有用的命令協(xié)助您開發(fā),它是由強(qiáng)大的 Symfony Console 組件所驅(qū)動话浇。利用它脏毯,我們可以快速的新建 ControllerModel等類幔崖。

  • 查看所有artisan命令

php artisan list

  • 查看當(dāng)前laravel的具體版本

php artisan --version

  • 應(yīng)用進(jìn)入維護(hù)模式

php artisan down

  • 應(yīng)用推出維護(hù)模式

php artisan up

下面是開發(fā)中更常用更重要的部分:

  • 創(chuàng)建RESTful資源的控制器和方法

php artisan make:controller UserController

  • 生成表文件

php artisan make:migration create_article_table

  • 執(zhí)行遷移食店,創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu)

php artisan migrate

  • 執(zhí)行單文件數(shù)據(jù)填充

php artisan db:seed --class=AuthorTableSeeder

  • 項(xiàng)目開發(fā)中超實(shí)用的命令(回滾所有遷移并重新遷移生成種子):

php artisan migrate:refresh --seed

  • 創(chuàng)建 Eloquent 模型類:

php artisan make:model User

  • 創(chuàng)建一個新的服務(wù)提供者類

php artisan make:provider name

  • 創(chuàng)建一個新的表單請求類

php artisan make:request name

更多用法

  • 建議創(chuàng)建migration遷移文件時(shí)追加--create=articles參數(shù),這樣會使新的遷移文件添加默認(rèn)格式赏寇。

  • 數(shù)據(jù)遷移表生成后吉嫩,在database\migrations目錄存在著2016_09_10_020228_create_article_table.php。該文件只有遷移前編寫的up方法和刪除或者覆蓋數(shù)據(jù)表使用回滾時(shí)的down方法嗅定,我們只需修改up方法:

  • LaravelModel 對應(yīng)的表名是其英文單詞的復(fù)數(shù)形式(內(nèi)部使用了英文詞語的單復(fù)數(shù)映射)自娩,例如 UserModel 在數(shù)據(jù)庫中的體現(xiàn)就是users表。接下來讓我們把 PHP 代碼變成真實(shí)的 MySQL 中的數(shù)據(jù)表渠退,運(yùn)行命令:php artisan migrate忙迁。

  • 執(zhí)行成功后,articles 表已經(jīng)出現(xiàn)在數(shù)據(jù)庫里了碎乃。articles里字段名可以改為你想要的名字姊扔,建議統(tǒng)一命名。

  • 完成后數(shù)據(jù)庫里還會多了個 migrations 表梅誓,用來記錄數(shù)據(jù)庫遷移信息恰梢,并且 database/migrations/ 目錄下記錄著采用 RoR 思想誕生的遷移文件佛南,這些文件不允許刪除,否則不利于交付和迭代嵌言。

Seeder

  • database/seeds/下則對應(yīng)相應(yīng)的數(shù)據(jù)庫改動信息嗅回,包含數(shù)據(jù)。
  • Seeder 解決的是我們在開發(fā) web 應(yīng)用的時(shí)候呀页,需要手動向數(shù)據(jù)庫中填入假數(shù)據(jù)的繁瑣低效問題妈拌。運(yùn)行以下命令創(chuàng)建 Seeder 文件:

php artisan make:seeder
ArticleSeeder

我們會發(fā)現(xiàn)database/seeds/里多了一個文件 ArticleSeeder.php,修改此文件中的 run 函數(shù)為:

public function run() {
    DB::table('articles')->delete();
    for ($i=0; $i < 10; $i++) {
        \App\Article::create([ 'title' => 'Title '.$i, 'body' => 'Body '.$i, 'user_id' => 1, ]);
    }
}

上面代碼中的 \App\Article 為命名空間絕對引用蓬蝶。接下來我們把ArticleSeeder注冊到系統(tǒng)內(nèi)尘分。修改database/seeds/DatabaseSeeder.php
中的 run 函數(shù)為:

public function run() {
    $this->call(ArticleSeeder::class);
}

由于database目錄沒有像app 目錄那樣被composer注冊為psr-4自動加載,采用的是psr-0 classmap方式丸氛,所以我們還需要運(yùn)行以下命令把ArticleSeeder.php加入自動加載系統(tǒng)培愁,避免找不到類的錯誤:

composer dump-autoload

然后執(zhí)行 seed:

php artisan db:seedSeeded: ArticleSeeder

這時(shí)候刷新一下數(shù)據(jù)庫中的 articles 表,會發(fā)現(xiàn)已經(jīng)被插入了 10 行假數(shù)據(jù)缓窜。

參考:

1定续、Laravel 5.1 LTS 速查表
https://cs.phphub.org/#artisan

2、Laravel 5.0 中文文檔:Artisan 命令行接口
http://laravel-china.org/docs/5.0/artisan

php artisan key:generate重新生成秘鑰

php artisan make:controller UserController

3禾锤、2016 版 Laravel 系列入門教程(一)
https://github.com/johnlui/Learn-Laravel-5/issues/4

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末私股,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子恩掷,更是在濱河造成了極大的恐慌倡鲸,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件黄娘,死亡現(xiàn)場離奇詭異峭状,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)逼争,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門优床,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人誓焦,你說我怎么就攤上這事胆敞。” “怎么了杂伟?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵竿秆,是天一觀的道長。 經(jīng)常有香客問我稿壁,道長幽钢,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任傅是,我火速辦了婚禮匪燕,結(jié)果婚禮上蕾羊,老公的妹妹穿的比我還像新娘。我一直安慰自己帽驯,他們只是感情好龟再,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著尼变,像睡著了一般利凑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嫌术,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天哀澈,我揣著相機(jī)與錄音,去河邊找鬼度气。 笑死割按,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的磷籍。 我是一名探鬼主播适荣,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼院领!你這毒婦竟也來了弛矛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤比然,失蹤者是張志新(化名)和其女友劉穎丈氓,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谈秫,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡扒寄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年鱼鼓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拟烫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡迄本,死狀恐怖硕淑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情嘉赎,我是刑警寧澤置媳,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站公条,受9級特大地震影響拇囊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜靶橱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一寥袭、第九天 我趴在偏房一處隱蔽的房頂上張望路捧。 院中可真熱鬧,春花似錦传黄、人聲如沸杰扫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽秧耗。三九已至颠区,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背伏嗜。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蒲肋,地道東北人袱吆。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像辜纲,于是被迫代替她去往敵國和親笨觅。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容