
2021-02-12
あまりないケースではありますが、一度作成したLaravelプロジェクトの名称を変更する方法を解説します。ここで言うLaravelプロジェクトの名称とは、以下のコマンドのSample
のことを指します。
$ composer create-project --prefer-dist laravel/laravel Sample
ターミナルで以下のコマンドを実行します。
$ php artisan app:name RevisedSample
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のリポジトリ名変更なども行ってください。
坂井 光太郎 (Kotaro Sakai)
東京都世田谷区在住のフリーランスエンジニア。Ruby on Rails を中心とした Web アプリ開発全般に関する技術情報をまとめています。業務に関するご依頼・ご相談、当サイトに対するご感想やメッセージはコンタクトフォームからお気軽にお問い合わせください。