0
0
お題は不問!Qiita Engineer Festa 2024で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

Laravelのモデルとマイグレーションを利用してデータベースを操作してみた

Last updated at Posted at 2024-06-23

はじめに

こんにちは、Webエンジニアの岩田史門(@SI_Monxy)です!
今回はLaravelのモデルとマイグレーションを利用したデータベース操作について記事を書いてみました!
改善点や修正点があれば、コメントにて優しくご指導いただけると嬉しいです!

概要

Laravelにおけるモデル(Model)とマイグレーション(Migration)は、データベース操作を効率的に行うための重要な要素です。本記事では、これらの基本的な使い方と操作方法について解説します。

モデルとは何か?

モデルはLaravelにおいてデータベースとのやり取りを担当するクラスです。各モデルは単一のデータベーステーブルに関連付けられ、そのテーブルのデータを操作するためのメソッドを提供します。

モデルの作成

まず初めに、以下のArtisanコマンドを使用して新しいモデルを作成します。

php artisan make:model Product

これにより、app/Models/Product.php というファイルが生成されます。この中に Product モデルのクラスが定義されます。

モデルの基本的な操作

例えば、Product モデルが products テーブルに関連付けられている場合、以下のようにしてデータを操作できます。

use App\Models\Product;

// レコードの取得
$products = Product::all();

// 特定の条件でのレコードの取得
$product = Product::where('id', 1)->first();

// 新しいレコードの作成
$newProduct = new Product;
$newProduct->name = 'New Product';
$newProduct->price = 1000;
$newProduct->save();

// レコードの更新
$product->price = 1200;
$product->save();

// レコードの削除
$product->delete();

マイグレーションとは何か?

マイグレーションは、データベースのスキーマを定義し、データベースのバージョン管理を行うための仕組みです。マイグレーションを使うことで、テーブルの作成や変更を簡単に行うことができます。

マイグレーションの作成

新しいマイグレーションファイルを作成するには、以下のArtisanコマンドを使用します。

php artisan make:migration create_products_table

これにより、database/migrations フォルダに新しいマイグレーションファイルが作成されます。

マイグレーションファイルの記述例

例えば、products テーブルを作成するマイグレーションファイルは次のようになります。

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateProductsTable extends Migration
{
    public function up()
    {
        Schema::create('products', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->integer('price');
            $table->timestamps();
        });
    }

    public function down()
    {
        Schema::dropIfExists('products');
    }
}

マイグレーションの実行

マイグレーションを実行するには、以下のArtisanコマンドを使用します。

php artisan migrate

これにより、定義したテーブルがデータベースに作成されます。

まとめ

この記事では、Laravelにおけるモデルとマイグレーションの基本的な使い方と操作方法について解説しました。初心者でもわかりやすく、実際のサンプルコードを交えて説明しました。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0