iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 1
5
Modern Web

Laravel 6.0 初體驗!怎麼用最新的 laravel 架網站!系列 第 1

[Day 1] 開始使用 Laravel 6.0

這一陣子以來,網頁開發最大的新聞,就是 Laravel 6.0 要發佈了!
laravel 6.0

最近一陣子連官網都更新啦!

興奮到模糊

什麼?你從來沒有用過 Laravel 框架?覺得 Laravel 很難學?

震驚

那還不趕快追蹤這一系列文章!教你如何從零開始,學會怎麼用 Laravel 6.0 開發網站!


Laravel 是一個使用 PHP 程式語言的後端框架,要運作 Laravel 之前,要先確定環境安裝好 PHP

電腦還沒有 PHP 的同學請參考官網的教學安裝

安裝成功之後,執行 php --version,應該可以看到類似這樣的提示訊息:

$ php --version
PHP 7.3.6 (cli) (built: May 31 2019 23:38:25) ( NTS )

如果已經有 PHP 環境的同學們,請各位先下載 composer

不會用 composer 的同學們,請參考composer 官網的教學

或者可以參考聖佑大大精彩的演講

安裝好之後,執行

$ composer global require laravel/installer

Changed current directory to /Users/reccachao/.composer
Using version ^2.1 for laravel/installer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files

好了!看起來成功安裝了!我們來嘗試看看取得現在 laravel 的版本:

如果你看到的是類似

$ laravel --version
bash: laravel: command not found

這樣的錯誤訊息,那代表你的 cmd 不認得 laravel 這個命令。最有可能的原因,是因為他沒有嘗試去找 composer 下載的檔案來運行。

你需要修改你的 $PATH 路徑,讓指令列可以成功找到 Laravel installer

如果你是用 macOS 或者 GNU / Linux 系統,你的 Laravel installer 應該位在

$HOME/.composer/vendor/bin

如果你是用 Windows 系統,請去買一台 Mac

開玩笑的,你的 Laravel installer 應該位在

%USERPROFILE%\AppData\Roaming\Composer\vendor\bin

如果修改完成之後,或者你原本看到的就是類似這樣的訊息

$ laravel --version
Laravel Installer 2.1.0

恭喜你!你已經安裝好 Laravel installer 了。我們現在來建立一個新專案

$ laravel new Laravel60Demo
Crafting application...
Loading composer repositories with package information
......
Package manifest generated successfully.
Application ready! Build something amazing.

成功啦!我們趕緊進去看看

$ cd Laravel60Demo
$ ls
app            bootstrap      composer.lock  database       phpunit.xml    resources      server.php     tests          webpack.mix.js
artisan        composer.json  config         package.json   public         routes         storage        vendor         yarn.lock

恭喜你!你安裝了人生中第一個 Laravel 專案了!歡迎進入 Laravel 的世界!

今天就先到這邊吧!明天我們來看看怎麼繼續 Laravel 的開發!


下一篇
[Day 2] 版本怎麼不是 6.0?聊聊版本編號與 Laravel 架構
系列文
Laravel 6.0 初體驗!怎麼用最新的 laravel 架網站!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
阿瑜
iT邦研究生 4 級 ‧ 2019-09-09 00:05:33


嘗試過的辦法

nano ~/.bash_profile
# add 
export PATH=~/.composer/vendor/bin:$PATH

但 還是

想請問 這樣怎麼辦?

看更多先前的回應...收起先前的回應...
ReccaChao iT邦新手 1 級 ‧ 2019-09-09 00:22:09 檢舉

你好~
.bash_profile 加入指令之後,可能還需要執行

$ source ~/.bash_profile

才會生效喔

另外執行該指令之前,請再三確認你的 PATH 引用方式是否正確,不然可能導致整個 PATH 被弄亂喔!

個人建議使用

export PATH="$PATH:$HOME/.composer/vendor/bin"

多數看到的教學都是這樣引用,應該沒有問題。


參考資料

阿瑜 iT邦研究生 4 級 ‧ 2019-09-09 00:26:38 檢舉

好 ,我試試。
/images/emoticon/emoticon41.gif

阿瑜 iT邦研究生 4 級 ‧ 2019-09-09 00:34:01 檢舉

試過了,但還是不行 QQ

加入 export ...

執行 source ...

laravel 還是找不到指令

ReccaChao iT邦新手 1 級 ‧ 2019-09-09 00:57:44 檢舉

打錯字囉

vendor 不是 vender


另外一個可以協助偵測錯誤的方式,是用 $ echo $PATH 來看看現在的 $PATH 到底長怎樣

安裝環境常常會有很多問題,辛苦你了,加油!

阿瑜 iT邦研究生 4 級 ‧ 2019-09-09 01:05:23 檢舉

謝謝你的即時救援 m(_ _)m

阿瑜 iT邦研究生 4 級 ‧ 2019-09-09 01:14:34 檢舉


把 vender 改成 vendor了,但還是行不通。
這次有把路徑 echo 出來了

阿瑜 iT邦研究生 4 級 ‧ 2019-09-09 14:01:08 檢舉

Ok 啦 ~~~ 謝謝你XD

0
vivian880055
iT邦新手 5 級 ‧ 2019-09-28 23:28:42

$ cd Laravel60Demo
$ ls
想請問最後這個要怎樣執行才行
我用了都是這樣
https://ithelp.ithome.com.tw/upload/images/20190928/20120427TlVux42sqO.jpg

看更多先前的回應...收起先前的回應...
ReccaChao iT邦新手 1 級 ‧ 2019-09-28 23:47:11 檢舉

這代表專案並沒有建立成功,Laravel60Demo 這個資料夾沒有出現。

重新操作一次看看哪邊出錯了吧

想問一下,這樣是不是已經建立好專案的意思呢?

https://ithelp.ithome.com.tw/upload/images/20190929/20120427m6ZPnwE3Nh.jpg

ReccaChao iT邦新手 1 級 ‧ 2019-09-29 21:00:55 檢舉

對,你建立好的新專案名稱是 Laravel60

不過你嘗試存取的是 Laravel60Demo,後面這個資料夾是不存在的,所以你會無法存取。

我又重新試了一次
到這都是對的,可是執行$ cd Laravel60Demo
請問該怎麼解決呢?

https://ithelp.ithome.com.tw/upload/images/20190929/2012042734qUIUw4Mx.jpg

ReccaChao iT邦新手 1 級 ‧ 2019-09-29 23:23:24 檢舉

找到原因啦!因為我的文章寫錯字了
在建立時我寫的是 Laravel60 存取時我寫的是 Laravel60Demo

馬上改正,感謝您的提問,讓我發現問題XD

真的非常謝謝你!
我終於用成功了

0
ckp6250
iT邦好手 1 級 ‧ 2019-11-26 16:39:04

新生報到。

1
eric19740521
iT邦新手 1 級 ‧ 2020-08-26 04:00:31

WINDOWS這樣下達,可以指定LARAVEL版本


composer create-project --prefer-dist laravel/laravel demo3 "6.0.*"

0
BeEvil_Y
iT邦新手 4 級 ‧ 2021-10-05 15:57:43

為什麼你們IT邦鐵人賽都沒提到一件事情…
如果我有很多張資料表,要做複合查詢,要怎玩?

你們的示例永遠就一張資料表玩到底 (HTTP CURL )
怎麼調用route、view、controller
了不起講個session、author、hash
後面再補個bootstrap、vuejs、duckfile結尾。

你要知道喔,對新手來講,你們一個Model用一張Table。
沒學過程式設計、資料庫的人,會以為「就是這樣綁定」的。
很不幸的,實際情況我可以一個PhP調用 100張table,只要我願意。

講到這就會有很多人,看不懂我想表達什麼。

舉例:
水果(種類、價格、季節)
銷售員(姓名、薪資、電子信箱)
顧客(姓名、電話、職業、性別)
流水帳(帳單、金額、品項)

我想請問一下,有誰會白痴到為這4個資料表都各做一次Model?
做完這4個Model之後,你還要去遷Route、Controller。
再做新增、刪除、修改?

做完後,為了配合老闆,你要怎麼弄報表?
老闆想從手機看,這個月的中年婦女買了哪些水果。

請問

你要怎麼做這個頁面?

把上面4個表全部用all()調出來放在array,再用javascript去切割控制嗎?
我現在就看到不少網站是這樣做呢?
搞什麼東西啊?

這個東西,我用一下資料庫語法 select from inner join就可以輕鬆解決了。

連你們萬年唾棄的Asp.net都做的到,還是圖形化界面。
箭頭拉一拉弄個關聯表就好了,還有關聯精靈一步一步帶著你做。
完全零語法。
傳送門:https://www.youtube.com/watch?v=suQ81mvfyhA

直接在Microsoft access 內建立「查詢表」,免在Html寫語法調用。
直接連進資料庫取出「查詢表」,不用在那邊 where for desc only like????
傳送門:https://youtu.be/JfTQlZ6VX9A

回到正題:
所以為什麼整個IT邦,在 Laravel 裡沒有半個人提到複合查詢。

也沒有人講解,如果資料表不綁Model的情況下,可以Use(宣告) db 進來調用?

很扯的東西你知道嗎?新手為了調用資料表,全部都Use(宣告)Model裡面的Controller。
再利用 xxxxx::all();取資料。

像上面的例子,就會變這樣。
水果::all();
銷售員::all();
顧客::all();
流水帳::all();

再白痴一點就寫成這樣。
$for=[
水果::all(),
銷售員::all(),
顧客::all(),
流水帳::all(),
];

$for=[] 等於 $for=array()

你們這樣是在殘害幼苗喔,我提醒一下你們。
你們是主打Laravel是零程式、資料庫基礎可學的東西。

結果你們這些前鋒引導者,都沒注意到後浪再做什麼。

補充

你們一定要有人出來導正視聽。
不然你們就等著看全台灣跟Laravel有關的大中小專案,有超過30%都是像我說的。
全部用all()調出來放在array,再用javascript去切割控制,這種畸型玩法。

你們知道這種畸型玩法,在現實生活中有多離譜嗎?

就好像你去一間餐聽,正常是你照著「菜單」去點菜。
正常:「主食一份、配菜三份、甜點一份」。

你這個玩法就是
畸型:「全部叫廚師煮出來,你每個吃一口,再決定要吃什麼,再付你決定吃的錢」。

資料庫小是一回事,資料庫大又是另一回事。
2017~2021全台灣網路資料流每天的數據約200T~300T。
1T=1000G

為了解決這可怕的資料流,現在還有在推「邊際運算」(不懂的自已去GOOGLE)。

我希望未來如果增長到500~1000T時,兇手群最好不含Laravel。
放著不管10年後再來處理這件事情時,我看這些人有誰要理你。

我要留言

立即登入留言