Laravelプロジェクト作成の流れ

Laravel

さて、本日はPHPのフレームワークとして有名なLaravelのプロジェクト作成方法について解説していきます。

また、Laravelのアプリを開発の際に導入するライブラリなどは各々あるかと思いますが、今回は「Laravel Collective」と「Laravel Fortify」を導入していきたいと思います。

それでは、早速見ていきましょう!

Laravelプロジェクト作成

$ composer create-project --prefer-dist laravel/laravel プロジェクト名
// Laravel8系を導入する場合
$ composer create-project --prefer-dist laravel/laravel LaravelMiniCMS "8.*"

上記のコマンドで現ディレクトリにLaravelの開発用のファイルがインストールされます。

続いて、プロジェクトのディレクトリに移動しておきましょう。

cd プロジェクト名

Laravel Collectiveの導入

Laravewl CollectiveはLaravelのアップデートによってフレームワークから削除されてしまったLaravelの機能をライブラリとして組み込むことができます。

Laravel Collectiveを導入すると、ファームなどの書き方をコンパクトにかけたりなどのメリットがあります。

$ composer require laravelcollective/html

上記コマンドでLaravel Collectiveを導入できますが、メモリー不足でエラーになってしまうことがあります。

このような場合は下記のコマンドを実行しましょう。

// メモリー不足でエラーの時
$ COMPOSER_MEMORY_LIMIT=-1 composer require

config/app.phpの編集

日本用設定にするためにapp.phpファイルを編集しておきましょう。

// config/app.php

return [
    // …lock
    'timezone' => 'Asia/Tokyo',
    'locale' => 'ja',
    'faker_locale' => 'ja_JP',
    ...
];

.envファイルの編集

こちらはMAMP環境用の設定です。

基本的にはMAMP管理画面に記載のある通りに記述しましょう。

僕の場合は下記のようになっておりました。

Hostlocalhost / 127.0.0.1 (depending on language and/or connection method used)
Port8889
Usernameroot
Passwordroot
Socket/Applications/MAMP/tmp/mysql/mysql.sock

こちらをもとに.envファイルに記載します。

// .env

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=bookstack2
DB_USERNAME=root
DB_PASSWORD=root
// DB_SOCKETは追加
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock

これでMAMPへの接続が設定されたことになります。

Laravel Fortifyの導入

下記コマンドでLaravel Fortifyを導入します。

$ composer require laravel/fortify
// 必要なファイルを書き出す
$ php artisan vendor:publish --provider="Laravel\Fortify\FortifyServiceProvider”

次に作成されたconfig/fortify.phpファイルを編集します。

// config/fortify.php

<?php
 
return [
    'username' => 'name',
 
    'email' => 'email',
 
    'home' => '/admin',
 
    'limiters' => [
        'login' => 5,
    ],
 
    'features' => [],
 
    // adminでアクセス
    'path' => 'admin',
];
// ログイン、ログアウト機能だけを使う場合はfeaturesはコメントアウト

Providers/FortifyServiceProvider.php編集

こちらはプロジェクトに管理者が存在する場合に編集を行ってください。

// Providers/FortifyServiceProvider.php

public function boot()
{
    // ...
     
    // Viewのディレクトリを変更
    Fortify::viewPrefix('back.auth.');
}
// viewのディレクトリをback/authに変更

config/app.php編集

// config/app.php

'providers' => [
    // Fortify::createUsersUsing(CreateNewUser::class);
    // Fortify::updateUserProfileInformationUsing(UpdateUserProfileInformation::class);
    // Fortify::updateUserPasswordsUsing(UpdateUserPassword::class);
    // Fortify::resetUserPasswordsUsing(ResetUserPassword::class);
    App\Providers\FortifyServiceProvider::class,
],

まとめ

今回は「Laravel Collective」や「Laravel Fortify」など導入しましたが、Laravel初学者の方は「Laravel Collective」などは導入しなくても良いですし、「Laravel Fortify」を使用してログイン認証のUIを自作しなくてもLaravel UIなどでも良いかと思います。

今回はあくまでも自分が普段使用しているライブラリのLaravelプロジェクトの作成方法をご紹介しました。

参考にしていただければ幸いです。

コメント

タイトルとURLをコピーしました