File manager - Edit - /var/www/html/portal/app/Models/Escola.php
Back
<?php namespace App\Models; use DateTimeInterface; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Support\Str; class Escola extends Model { use HasFactory; public $incrementing = false; protected $keyType = 'string'; protected $table = 'escolas'; protected $fillable = [ 'id', 'structure_id', 'foto', 'nome', 'telefone', 'email', 'possuiRecursosMultifuncionais', 'tipoUnidadeEscolar', 'informacoes', 'climatizacao', 'observacoes_climatizacao', 'status', ]; protected $casts = [ 'possuiRecursosMultifuncionais' => 'boolean', ]; public static function boot(): void { parent::boot(); static::creating(function (self $model): void { $model->id = (string) Str::uuid(); }); } /** @return HasOne<Endereco> */ public function endereco(): HasOne { return $this->hasOne(Endereco::class, 'owner_id', 'id') ->latest('created_at'); } /** @return BelongsTo<Structure, Escola> */ public function pertence(): BelongsTo { return $this->belongsTo(Structure::class, 'structure_id'); } /** * Retorna a URL pública da foto. * * O diretório public/pmar/assets/img/escolas/ é um symlink para * storage/app/public/escolas/, portanto asset($foto) já serve o arquivo * corretamente tanto para o ícone padrão quanto para uploads. */ public function getFotoUrlAttribute(): string { return asset($this->foto ?? 'pmar/assets/img/icons/escola.png'); } protected function serializeDate(DateTimeInterface $date): string { return $date->format('Y-m-d H:i:s'); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.28 | Generation time: 0.06 |
proxy
|
phpinfo
|
Settings