>PHP 프레임워크 >Laravel >laravel의 모델 시간 설정에 대해 이야기해 보겠습니다.

laravel의 모델 시간 설정에 대해 이야기해 보겠습니다.

PHPz
PHPz원래의
2023-04-11 15:05:581515검색

Laravel은 현재 시장에서 매우 인기 있는 인기 있는 PHP 프레임워크입니다. 웹 개발을 보다 쉽고 효율적으로 수행할 수 있도록 다양한 기능과 도구를 제공합니다.

이 기사에서는 Laravel 프레임워크의 매우 중요한 개념인 모델 시간 설정에 대해 설명합니다. Laravel 프레임워크에서 모델은 일반적으로 데이터베이스와 상호 작용하는 데 사용되며, 이는 데이터베이스에 있는 테이블의 필드 및 클래스 속성을 정의함으로써 달성됩니다.

Laravel에서는 주로created_at,update_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 프레임워크에서 update_at는 테이블에 있는 데이터 행의 마지막 업데이트 시간을 의미하며, 기본적으로 현재 시간이며 데이터 행이 업데이트될 때마다 자동으로 업데이트됩니다. .

update_at 필드의 값을 제어하려면 아래와 같이 모델 클래스에서 $timestamps 속성을 true로 설정할 수도 있습니다.

class Example extends Model
{
    protected $timestamps = true;
}

update_at 필드의 이름을 사용자 정의하려면 $updatedAt를 사용하세요. 속성:

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

    protected $updatedAt = 'updated_date';
}

시간 설정 제거

Laravel 프레임워크에서는 테이블의 데이터를 영구 삭제하는 대신 일시 삭제를 사용하여 삭제할 수 있습니다. 소프트 삭제가 발생할 때 이 필드가 현재 타임스탬프로 추가되도록 데이터베이스에서 delete_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 메서드를 사용하세요.

Summary

Laravel 프레임워크에서는 모델 시간 설정을 사용하여 테이블의 데이터 행 생성 시간, 업데이트 시간 및 삭제 시간을 제어할 수 있습니다. 이러한 설정은 모델 클래스에 정의되어 있으며 데이터베이스의 데이터를 더 잘 관리하고 제어하는 ​​데 도움이 될 수 있습니다.

위 내용은 laravel의 모델 시간 설정에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.