Laavel Eloquent ORM의 작은 부분
잊어버릴 때 매뉴얼에서 귀찮아서 정리하고 싶어요.
컨디션
주 키워드를 사용하지 않는 경우
다음 두 가지 처리를 할 수 있다.
id
로 변경되어 이 설정이 무효<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Sample extends Model
{
/**
* The primary key for the model.
*
* @var string
*/
protected $primaryKey = null; // 無効
/**
* Indicates if the IDs are auto-incrementing.
*
* @var bool
*/
public $incrementing = false; // 無効
}
created_at 및 업데이트at를 사용하지 않는 경우
매뉴얼에 적힌 바와 같이
$timestamps
속성에 설정false
하면 업데이트가 발생하지 않습니다.<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Sample extends Model
{
/**
* Indicates if the model should be timestamped.
*
* @var bool
*/
public $timestamps = false; // 無効
}
또는 동적 설정값을 통해 대응할 수도 있다.<?php
use App\Models\Sample;
$model = new Sample();
$model->timestamps = false;
$model->save();
created_at 및 업데이트at가 별명인 경우
모델 클래스
CREATED_AT
또는 UPDATED_AT
상수에 대해서만 별칭을 설정합니다.<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Sample extends Model
{
/**
* The name of the "created at" column.
*
* @var string|null
*/
const CREATED_AT = 'create_date_time';
/**
* The name of the "updated at" column.
*
* @var string|null
*/
const UPDATED_AT = 'update_date_time';
}
변경하지 않을 경우created_at
와 updated_at
는 값으로 설정됩니다.created_at 및 업데이트어떤 at도 사용하지 않는 경우
업데이트가 발생하지 않는 책상이라면 필요 없다
updated_at
.이 경우
UPDATED_AT
상수에 설정null
하면 업데이트되지 않습니다.<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Sample extends Model
{
/**
* The name of the "updated at" column.
*
* @var string|null
*/
const UPDATED_AT = null;
}
라벨 코드를 보시면 좋을 것 같은데 열명null
이면 아무것도 안 하는 것 같아요.Reference
이 문제에 관하여(Laavel Eloquent ORM의 작은 부분), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/naopusyu/articles/9a3d108ad0f66b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)