Attachment.php 681 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Factories\HasFactory;
  4. use Illuminate\Database\Eloquent\Model;
  5. class Attachment extends Model
  6. {
  7. use HasFactory;
  8. protected $fillable = [
  9. 'attachable_type',
  10. 'attachable_id',
  11. 'filename',
  12. 'filepath',
  13. 'mime_type',
  14. 'size',
  15. ];
  16. protected $casts = [
  17. 'size' => 'integer',
  18. 'created_at' => 'datetime',
  19. 'updated_at' => 'datetime',
  20. ];
  21. // Полиморфная связь: вложение может принадлежать разным моделям
  22. public function attachable()
  23. {
  24. return $this->morphTo();
  25. }
  26. }