<?php namespace App\Models; use Spatie\MediaLibrary\MediaCollections\Models\Media as SpatieMedia; class Media extends SpatieMedia { protected $guarded = ['id']; protected $table = 'app_media'; public function replaceUseKey($key): self { self::delete(); return $this->model ->addMediaFromDisk($key, 'public') ->usingFileName($key) ->toMediaCollection($this->collection_name); } protected function casts() { return [ 'created_at' => 'datetime:Y-m-d H:i:s', 'updated_at' => 'datetime:Y-m-d H:i:s', ]; } }