Laravel Webアプリケーション 【環境構築とルーティング】
1 Laravel とは
色々書いてる
1.2 環境構築
Laravel が動作する開発環境を簡単に構築できるツールは大きく分けて2つ
・homestead ・色々セットになってる(PHP/nginx/Webサーバ,MySQLなど)
・laradock ・標準では、PHP/nginx/MySQLが使用できて必要に応じて設定ファイルに手を加えてカスタマイズしていく
環境構築(Laradock)
好きなディレクトリでクローン
git clone https://github.com/Laradock/laradock.git
laradockディレクトリに移動後、.env
ファイルを作成(laradockの環境設定ファイル的なもの)
cp env-example .env
途中でdocker-compose
が全く反応しなくなった。。
バージョンさえも見れない。。
これを参考にした。結果直った!
$ curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose $ chmod +x /usr/local/bin/docker-compose $ docker-compose --version ->1.11.1
プロジェクトの作成
$ docker-compose up -d nginx mysql workspace phpmyadmin $ docker-compose exec --user=laradock workspace bash $ composer create-project laravel/laravel sampleapp --prefer-dist "5.5.*"
再起動
$ docker-compose stop $ docker-compose up -d nginx mysql
1.3.2 welcomページの処理
クライアントからのリクエストに対して
public/index.php
(エントリポイント)
・Laracelの各処理への入り口
-> routes/web.php
(ルーティング)
-> welcom.blade.php
(ビューテンプレート)
・@ / ifなどが含まれているのはテンプレートエンジン
1.3.3 ルーティングの設定
routes/web.php
Route::get('/home',function(){ return view('home'); });
resources/home.blade.phpを作成
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> homeです。 </body> </html>
これでルーティング完了
1.3.4 テストコード
web業界では最初にテストコードを作ることが多いらしい。
テストファイルの作成(tests/Feature/HomeTest.php)
$ php artisan make:test HomeTest