ホームページ > PHPフレームワーク > Laravel > laravelのモデル時間設定について話しましょう

laravelのモデル時間設定について話しましょう

PHPz
リリース: 2023-04-11 15:58:31
オリジナル
1514 人が閲覧しました

Laravel は、現在市場で非常に人気のある人気の PHP フレームワークです。 Web 開発をより簡単かつ効率的に行うためのさまざまな機能とツールが提供されます。

この記事では、Laravel フレームワークにおける非常に重要な概念であるモデル時間の設定について説明します。 Laravel フレームワークでは、通常、データベースと対話するためにモデルが使用されます。これは、データベース内のテーブルのフィールドとクラス プロパティを定義することによって実現されます。

Laravel では、主に created_at、updated_at、deleted_at フィールドを含むモデル クラスの属性を変更することで、モデル内の時間設定を制御できます。

作成時刻の設定

Laravel フレームワークでは、created_at はテーブル内のデータ行の作成時刻を指します。デフォルトは現在時刻であり、モデルの作成時に自動的に設定できます。 。

created_at フィールドの値を制御するには、以下に示すように、モデル クラスで $timestamps 属性を true に設定します。

class Example extends Model
{
    protected $timestamps = true;
}
ログイン後にコピー
ログイン後にコピー

created_at の名前をカスタマイズする場合フィールドでは、$createdAt 属性を使用してください :

class Example extends Model
{
    const CREATED_AT = 'created_date';

    protected $createdAt = 'created_date';
}
ログイン後にコピー

修正時刻設定

Laravel フレームワークでは、updated_at はテーブル内のデータ行の最終更新時刻を指します。デフォルトでは現在時刻であり、データ行が更新されるたびに更新されます。更新が行われると自動的に更新されます。

updated_at フィールドの値を制御するには、以下に示すように、モデル クラスで $timestamps 属性を true に設定することもできます。

class Example extends Model
{
    protected $timestamps = true;
}
ログイン後にコピー
ログイン後にコピー

updated_at フィールドでは、$updatedAt プロパティを使用してください:

class Example extends Model
{
    const UPDATED_AT = 'updated_date';

    protected $updatedAt = 'updated_date';
}
ログイン後にコピー

削除時刻設定

Laravel フレームワークでは、テーブル内のデータを完全に削除するのではなく、論理的な削除を使用して削除できます。データベースでは、論理的な削除が発生したときにこのフィールドが現在のタイムスタンプとして追加されるように、deleted_at フィールドを追加する必要があります。

deleted_at フィールドの値を制御するには、以下に示すように、モデル クラスで SoftDeletes トレイト (論理的な削除機能) を使用できます。

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class Example extends Model
{
    use SoftDeletes;

    protected $dates = ['deleted_at'];
}
ログイン後にコピー

論理的な削除を使用する場合、削除された行ははクエリに表示されなくなり、withTrashed メソッドを使用して論理的に削除された行を含めることができます。同時に、onlyTrashed メソッドを使用して、論理的に削除された行のみを含む結果を返します。

概要

Laravel フレームワークでは、モデル時間設定を使用して、テーブル内のデータ行の作成時間、更新時間、削除時間を制御できます。これらの設定はモデル クラスで定義されており、データベース内のデータをより適切に管理および制御するのに役立ちます。

以上がlaravelのモデル時間設定について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート