はじめに
Laravelプロジェクトを作成する方法と、初めに行うべき設定(DB設定や日本語化など)をまとめました。
環境
- macOS Catalina 10.15.3
- PHP 7.3.11
- Composer 1.9.3
- Laravel 6.17.1
プロジェクト作成
ターミナルで以下のコマンドを実行します。
$ composer create-project laravel/laravel --prefer-dist sample
Installing laravel/laravel (v6.12.0)
- Installing laravel/laravel (v6.12.0): Loading from cache
...
Application key set successfully.
--prefer-dist
について
--prefer-dist
は、Laravelを圧縮(zip形式)してダウンロードするためのオプションになります。--prefer-dist
を指定しないと、Laravelを圧縮せずにダウンロードするためダウンロード時間が長くなります。
なお、--prefer-source
というオプションもあって、これはオプションを指定しない場合、つまりLaravelを圧縮せずにダウンロードするオプションです。
--prefer-source
:Laravelを圧縮せずにダウンロード(ダウンロード時間が長い)--prefer-dist
:Lavavelを圧縮してダウンロード(ダウンロード時間が短い)
Command-line interface / Commands - Composer
DB設定
今回は最も手軽なSQLiteを使用します。
設定ファイル変更
.env
を以下のように設定します。
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=laravel
# DB_USERNAME=root
# DB_PASSWORD=
DB_CONNECTION=sqlite
DBファイル作成
ターミナルで以下のコマンドを実行します。
$ sqlite3 database/database.sqlite
sqlite> .table
sqlite> .q
解説
config/database.php
の38〜44行目あたりにSQLiteに関する設定があります。
'sqlite' => [
'driver' => 'sqlite',
'url' => env('DATABASE_URL'),
'database' => env('DB_DATABASE', database_path('database.sqlite')),
'prefix' => '',
'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
],
DBの設定ファイルは以下の行で設定しています。
'database' => env('DB_DATABASE', database_path('database.sqlite')),
env
メソッドは.env
ファイルから第1引数で指定した設定を取得します。第1引数で指定した設定が見つからなかった場合は、第2引数で設定したデフォルト値が適用されます。
今回は.env
にDB_DATABASE
は設定していないので、第2引数で指定したデフォルト値が適用されています。
日本語化
Laravelの日本語化を行います。
プロジェクト全体
config/app.php
を以下のように設定します。
'locale' => 'ja',
'fallback_locale' => 'en',
fallback_locale
は、locale
の設定値がない場合に適用される設定です。
タイムゾーン
config/app.php
を以下のように設定します。
'timezone' => 'Asia/Tokyo',
メッセージファイル
下記のリポジトリをローカルにコピーし、ファイル群をプロジェクトにコピーします。
sutara79/demo-laravel-crud: My practice for basic CRUD of Laravel5 on Heroku.
$ cd ~/Products
$ git clone https://github.com/sutara79/demo-laravel-crud.git
$ cp -rp demo-laravel-crud/resources/lang/ja/. sample/resources/lang/ja/
$ cp -rp demo-laravel-crud/resources/lang/ja.json sample/resources/lang/
下記のリポジトリでも提供されています。こちらは日本語以外の多言語にも対応しています。
caouecs/Laravel-lang: List of 73 languages for Laravel 5 and Laravel 6
初期ページ削除
残しておいても問題ありませんが、気になる人は削除しておきましょう。
ルート情報
routes/web.php
を以下のように設定します。
Route::get('/', function () {
# return view('welcome');
return 'Hello';
});
削除してしまうとページが見つからなくなってしまうので、とりあえず適当な文字列を返すようにしておきます。先にコントローラーやビューを作成してそれらを設定しても大丈夫です。
ビュー
resources/views/welcome.blade.php
を削除します。
バージョン管理
GitとGitHubを使用します。
リポジトリ作成
下記のページを参考にしてリポジトリを作成します。
初期設定
ターミナルで以下のコマンドを実行します。
$ git init
$ git remote add origin https://github.com/xxxxx/yyyyyyy.git
コミット
ローカルで変更が発生したときは、ターミナルで以下のコマンドを実行します。
$ git add .
$ git commit -m "Commit message"
$ git push origin master
.gitignore
.gitignore
は初めから用意されています。初期設定は以下の通りです。
/node_modules
/public/hot
/public/storage
/storage/*.key
/vendor
.env
.env.backup
.phpunit.result.cache
Homestead.json
Homestead.yaml
npm-debug.log
yarn-error.log
まとめ
最低限、これだけは行っておいたほうがいい設定をまとめてみました。Laravelは勉強し始めて間もないですが、これからLaravelに関する記事を投稿していきたいと思っています😄