Laravel、プロジェクトを作成して最初にやること
今回は私がプロジェクト作成して最初に行うことをメモ程度にまとめました。
かなり説明は省いています。すいません
開発環境
・Mac
・php 7.4.6
・Laravel 7.15.0
・MySQL
プロジェクトの作成と.envファイルの編集
1. laravel new プロジェクト名
2. config/app.phpのtimezoneとlocaleの変更
'timezone' => 'Asia/Tokyo',
'locale' => 'ja',
データベースに関する設定
(1) .envファイルのデータベースの設定
DB_CONNECTION=mysql
DB_HOST=
DB_DATABASE=データベース名
DB_USERNAME=
DB_PASSWORD=
DB_SOCKET=
(2) マイグレーションファイルの設定
まず、マイグレーションを行う意味を知りましょう!
マイグレーションは、環境が変わった時などにデータベースを一から作るのは大変だからチャチャっと作って!という時の為にあります。
ローカル環境から本番環境に移行することを考えましょう。マイグレーションを使えば、本番環境でローカル環境と同じデータベースをコマンド一発で作成してくれます。まずはマイグレーションファイルを作っていきましょう!
以下のコマンドでファイルが作成されます。
$php artisan make:migration create_posts_table --create=posts
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreatePostsTable extends Migration
{
public function up()
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->timestamps();
});
}
public function down()
{
Schema::dropIfExists('posts');
}
}
このファイルの中にpostsテーブルの記述をしていきましょう。マイグレーションファイルが書き終わったら、以下のコマンドでmigrateしましょう。
$php artisan migrate
※ テーブルを加えたり、データベースに変更を加えた場合は以下のコマンドで更新出来ます。
$php artisan migrate:refresh
このコマンドによってデータベースにテーブルが作成されます。
(3)モデルの設定
モデルを作成する意味は、モデルクラスを使うことでデータベースにデータを挿入したり、削除することができるようにする為です。
以下のコマンドでファイルを作成出来ます。
モデルの名前は、テーブルの名前がpostsだったらPost.phpになる。どういうことかというと、テーブルの名前の単数形の名前をモデルにつけると、自動的にそのモデルはそのテーブルと紐づけられる。
以下のコマンドでモデルのファイルを作成しましょう!
$php artisan make:model Post
ファイルに記述する内容は、今回は割愛します。
(4)シーディング
シーディングは、サンプルデータをコマンド一発で作成するためのものです。
以下のコマンドで、ファイルを作成しましょう。
$php artisan make:seeder PostsTableSeeder
ファイルの中身を記入したら、DatabaseSeeder.phpにPostsTableSeeder.phpを登録します。
<?php
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
public function run()
{
$this->call(PostsTableSeeder::class);
}
}
これで、一通り最初にやることは完了です!
seederの書き方については以下の記事にまとめているので参照してください。
まとめ
今回は、私がプロジェクトを作成してから最初に行うことをまとめて見ました。
間違いありましたら、指摘をお願いします!
Author And Source
この問題について(Laravel、プロジェクトを作成して最初にやること), 我々は、より多くの情報をここで見つけました https://qiita.com/ryo-program/items/f51089bc24f623b7695b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .