【Laravel 6.x】Laravelプロジェクトの名称を変更する方法

2020年3月4日 16:26

はじめに

あまりないケースではありますが、一度作成したLaravelプロジェクトの名称を変更する方法を解説します。ここで言うLaravelプロジェクトの名称とは、以下のコマンドのSampleのことを指します。

$ composer create-project --prefer-dist laravel/laravel Sample

変更方法

Laravel 5.9以前

ターミナルで以下のコマンドを実行します。

$ php artisan app:name RevisedSample

Laravel 6.x

Laravel 6.xからphp artisan appコマンドが廃止されました。

[5.9] Remove AppNameCommand by driesvints · Pull Request #27575 · laravel/framework

そのため、php artisan app:nameと同等の独自コマンドを作成する必要があります。独自コマンドを作成するには、ターミナルで以下のコマンドを実行します。

$ php artisan make:command AppName

app/Console/Commands/AppName.phpが作成されました。このファイルに、有志が作成した以下のコードを貼り付けます。

[6.0] Command app:name

後は、Laravel 5.9以前と同様、以下のコマンドを実行するだけです。

$ php artisan app:name RevisedSample

変更箇所

pjhp artisan app:nameを実行することで、コントローラーの名前空間が以下のように変更されます。

変更前

use App\User;

変更後

use RevisedSample\User;

手動で変更が必要な箇所

ビューの名前空間

ビューで名前空間を使用することはあまりないとは思いますが、ビューの名前空間は手動で変更する必要があります。あるいは、これを機会に処理をコントローラーに移したほうがいいかもしれません。

変更前

@foreach (App\Post::all() as $post)

変更後

@foreach (RevisedSample\Post::all() as $post)

シンボリンク再作成

public/storage/のシンボリックリンクを作成していた場合、public/storage/を手動削除した後、シンボリックリンクを再作成する必要があります。

$ rm public/storage
$ php artisan storage:link

まとめ

Laravelプロジェクトの名称を変更することはあまりないと思いますが、一応手順としてまとめてみました。

必要に応じてGitHubのリポジトリ名変更なども行ってください。

関連記事

開発環境(ローカルストレージ)と本番環境(Amazon S3)にトリミング+リサイズした画像を保存する方法
# はじめに 以前、以下の記事を書きました。 - [開発環境と本番環境で画像のアップロード先を分岐する方法 \- AUTOVICE](https://www.autovice.jp/articles/68) - [ローカルやAmazon [...]
2020年3月7日 11:56
Laravel Mixの仕組みをわかりやすく解説:CSSをSASS/SCSSで記述する方法
# はじめに Laravel Mixの仕組みをわかりやすく解説します。Laravel Mixを使ってアセットコンパイルを行うことで、SASS/SCSSでCSSを記述できるようになります。 # Laravel Mixの仕組み まずはじめに、 [...]
2020年3月6日 9:25
【Laravel】ローカルディスクやAmazon S3にアップロードした画像をビューで表示する方法
# はじめに 本記事では、ローカルディスクやAmazon S3にアップロードした画像をビューで表示する方法について説明しています。 なお、本記事では画像のアップロードする方法については説明していません。本記事は既に実装済みの画像アップロード [...]
2020年3月4日 15:44
【Laravel】Amazon S3へのアップロードが「403 Access Denied」で失敗する原因と対処方法
# はじめに LaravelでAmazon S3へ画像アップロードする処理を実装し、いざアップロードしようとしたところ、以下のエラーが出て失敗しました。 ``` Error executing "PutObject" on "https: [...]
2020年3月4日 13:33
開発環境と本番環境で画像のアップロード先を分岐する方法
# はじめに この記事では、以下の方針で画像のアップロード先を分岐する方法について解説しています。 - 開発環境:ローカル(storage/app/public/) - 本番環境:Amazon S3 # 事前準備 AWSに未登録の [...]
2020年3月4日 12:52