Файловый менеджер - Редактировать - /home/clickysoft/public_html/charliapp-v2.clickysoft.net/app/Models/BrainstormRound.php
Назад
<?php namespace App\Models; use DateTimeInterface; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; use Spatie\MediaLibrary\MediaCollections\Models\Media; class BrainstormRound extends Model implements HasMedia { use InteractsWithMedia, HasFactory; public $table = 'brainstorm_rounds'; protected $appends = [ 'audio_file', 'audio_file_url' ]; protected $dates = [ 'created_at', 'updated_at', 'deleted_at', ]; protected $fillable = [ 'user_id', 'series_id', 'book_id', 'brainstorm_id', 'title', 'transcript', 'created_at', 'updated_at', 'deleted_at', ]; protected function serializeDate(DateTimeInterface $date) { return $date->format('Y-m-d H:i:s'); } public function registerMediaConversions(Media $media = null): void { $this->addMediaConversion('thumb')->fit('crop', 50, 50); $this->addMediaConversion('preview')->fit('crop', 120, 120); } public function user() { return $this->belongsTo(User::class, 'user_id'); } public function series() { return $this->belongsTo(Series::class, 'series_id'); } public function book() { return $this->belongsTo(Book::class, 'book_id'); } public function brainstorm() { return $this->belongsTo(Brainstorm::class, 'brainstorm_id'); } public function getAudioFileAttribute() { return $this->getMedia('audio_file')->last(); } public function getAudioFileUrlAttribute() { $brainstorm = $this->brainstorm; if ($brainstorm && isset($brainstorm->audio_file)) { return asset('storage/brainstorm/' . $brainstorm->id . '/' . $brainstorm->audio_file); } return null; } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка