반응형
Larabel - 임시 삭제 - 투고를 다른 테이블로 이동
다른 동일한 로그 테이블에 소프트 삭제 아이템을 넣을 수 있는 Laravel 작업이 가능합니까?다른 테이블의 모든 임시 삭제된 파일.
로그 테이블에 이벤트 스케줄러(http://dev.mysql.com/doc/refman/5.6/en/events-overview.html)를 생성하여 잠시 후 모든 데이터를 삭제합니다.
이것을 실현하기 위한 몇 가지 다른 방법.삭제된 항목을 다른 테이블에 삽입하려면 삭제 이벤트에서 이 작업을 수행할 모델에 모델 청취자를 등록하십시오.
MyModel::deleting(function($model) {
DeletedItems::create([
// Your model fields here
]);
});
--아니면--
임시 삭제 후 일정 시간이 지난 후 실제로 데이터베이스에서 항목을 삭제하려면 Scheduled Task를 사용하는 것이 좋습니다.임시 삭제는 타임스탬프를 제공하므로 태스크에서 참조할 수 있습니다.
예를 들어, 다음과 같이 하면 한 달 이상 임시 삭제된 모든 모델이 제거됩니다.
protected function schedule(Schedule $schedule)
{
$schedule->call(function () {
MyModel::withTrashed()
->whereDate('deleted_at', '<', Carbon::today()->subMonth())
->forceDelete();
})->daily();
}
언급URL : https://stackoverflow.com/questions/41381457/laravel-soft-delete-move-posts-to-other-table
반응형
'programing' 카테고리의 다른 글
Join을 사용한 JPA 업데이트 (0) | 2022.10.01 |
---|---|
함수에서의 디폴트 인수 사용 (0) | 2022.10.01 |
Linux에서 Mariadb 10과 호환되는 ODBC 드라이버가 있습니까? (0) | 2022.10.01 |
URL에서 도메인 구문 분석 (0) | 2022.10.01 |
2분마다 저장된 상태 로그에서 이벤트의 시작/종료 시간을 결정하는 방법 (0) | 2022.09.25 |