はじめに
あまりないケースではありますが、一度作成した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
が作成されました。このファイルに、有志が作成した以下のコードを貼り付けます。
後は、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のリポジトリ名変更なども行ってください。