#はじめに
Laravelを学び始めたので、ブログアプリを作っていく過程の学習を通じて感じたことなどを書いていこうと思います。
まずは準備についてまとめていきます。
#Laravelとは
webアプリケーションを簡単に作るためのフルスタックなPHPフレームワーク
公式ドキュメント
#環境
PHP 7以上必須
PHPのアップデート方法
$ sudo yum install -y --enablerepo=remi-php71 php
データベース
SQLite3
###Laravelインストール
Conmposerが必要です。
[Download]→[Download Composer]→コマンドをコピーしてターミナルで実行
以下のコマンドでLaravelをインストールします。
$ php composer.phar create-project --prefer-dist laravel/laravel [プロジェクト名]
最後にスペース+任意のプロジェクト名を入れます。
Laravelではartisanというコマンドで様々な処理を行います。
$ php artisan --version
とするとLaravelのバージョンを表示してくれます。
私の環境を載せておきます。
Laravel Framework 7.12.0
#各種フォルダの説明
###App フォルダ
アプリケーションに関するクラスを管理します。
モデルに関するファイルはこのapp直下に作られていきます。
ユーザーの管理をしない場合この中のUser.phpは削除しても構いません。
コントローラーに関してはapp > Http > Controllersに入れていきます。
###config フォルダ
設定に関するフォルダです。
###database フォルダ
データーベースに関するファイルを入れていきます。
新規ファイル作成
デフォルトでデータベースフォルダの中のdatabase.sqliteを使うのでターミナルで
$ touch database.sqlite
で空のファイルを作っておく。
database > migrations フォルダ
データーベースのバージョン管理をするためのファイルを入れていきます。
デフォルトでいくつか入っていますが、これはLaravelが最初から作っているUserに関するマイグレーションファイルです。
ユーザー管理しない場合はこれを削除します。
ここで削除しておかないと後々の開発でエラーになります。
###public フォルダ
ブラウザからアクセスした時に見えるフォルダになります。
CSSやJavaScriptや画像などはこちらに入れます。
resources > viewsフォルダ
画面のテンプレートを入れていきます。
###routesフォルダ
どのURLにアクセスした時にどの処理を実行するかという設定を、ルーティングと呼びます。
routesにはそのためのファイルが入っています。
Webアプリケーションを作っていくのであれば、web.phpを使っていきます。
##Finderで隠しファイル・フォルダの表示
command + shift + .(コマンド + シフト + ピリオド)
これで表示と非表示が切り替わります。
VSCならデフォルトでも確認可能ですがFinderではこのような方法で表示します。
##アプリケーションの設定
.envファイルとconfigフォルダの中のファイルを作っていきます。
.env ファイル: 環境に依存する設定値を書きます。
configフォルダにあるファイルは.envファイルに書かれた値を参照します。
こうすることで環境が変わった時に.envファイルだけを差し替えればいいので便利です。
.envファイルの中
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
DB_CONNECTIONがデフォルトではmysqlになっています。
SQLiteを使っていく場合DB_CONNECTION=sqliteのようにします。
それ以降の5つの項目はsqliteでは使わないので削除します。
config > app.php
envと書かれている関数はenv-helperと呼ばれていて、
.envファイルの方から値を持ってくるための命令になります。
'name' => env('APP_NAME', 'Laravel'),
こちらの意味は、appに関してはenvのAPP_NAMEに値が設定されていたらそれを、値が設定されていなかったら Laravelを使いなさいという意味になります。
環境によって切り替えたい値がある場合は .env に書いておいて適宜参照します。
app.phpで編集
'timezone' => 'Asia.Tokyo',
'locale' => 'ja',
これで設定は終わりになります。
##Links
[Finderで隠しファイル、隠しフォルダの表示/非表示]
(https://support.borndigital.co.jp/hc/ja/articles/360005975154-Finder%E3%81%A7%E9%9A%A0%E3%81%97%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB-%E9%9A%A0%E3%81%97%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AE%E8%A1%A8%E7%A4%BA-%E9%9D%9E%E8%A1%A8%E7%A4%BA)