File: /home/imensosw/www/mpl.imenso.co/app/Models/File.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Storage;
class File extends Model
{
protected $appends = [
'full_url',
];
public function fileable()
{
return $this->morphTo();
}
public function type()
{
return $this->belongsTo(\App\Models\FileType::class, 'type_id');
}
public function remove()
{
Storage::delete($this->src);
$this->delete();
}
public function getFullUrlAttribute()
{
if (! $this->exists) {
return $this->src;
}
return config('filesystems.disks.s3.url') . '/' . $this->src;
}
}