NewsParagraphPhoto.php 712B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Casts\Attribute;
  4. use Illuminate\Database\Eloquent\Model;
  5. use Illuminate\Support\Facades\Storage;
  6. use Spatie\Translatable\HasTranslations;
  7. class NewsParagraphPhoto extends Model
  8. {
  9. use HasTranslations;
  10. protected $guarded = ['id'];
  11. public $timestamps = false;
  12. protected $appends = ['photo_img_url'];
  13. public $translatable = ['img_alt'];
  14. public function paragraph(){
  15. return $this->belongsTo(NewsParagraph::class);
  16. }
  17. protected function photoImgUrl(): Attribute
  18. {
  19. return Attribute::make(
  20. get: fn ($value) => is_null($this->img_url) ? null :Storage::url($this->img_url),
  21. );
  22. }
  23. }