ledgerrz/app/Models/Ledger.php
Daan Meijer 1e0782385b
Some checks failed
linter / quality (push) Failing after 1m5s
tests / ci (8.4) (push) Failing after 1m7s
tests / ci (8.5) (push) Failing after 1m5s
tests / ci (8.3) (push) Failing after 12m5s
over naar uuids, policies, predefined mutations aan kunnen passen
2026-06-21 23:09:38 +02:00

57 lines
1.2 KiB
PHP

<?php
namespace App\Models;
use Database\Factories\LedgerFactory;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
class Ledger extends Model
{
/** @use HasFactory<LedgerFactory> */
use HasFactory;
protected $fillable = [
'dynamic_id',
'name',
'rules',
'score',
'alignment',
'status',
];
public function dynamic(): BelongsTo
{
return $this->belongsTo(Dynamic::class);
}
public function mutations(): HasMany
{
return $this->hasMany(Mutation::class);
}
public function predefinedMutations(): HasMany
{
return $this->hasMany(PredefinedMutation::class);
}
public function media(): \Illuminate\Database\Eloquent\Relations\MorphMany
{
return $this->morphMany(Media::class, 'mediable');
}
protected static function booted(): void
{
static::creating(function ($model) {
$model->uuid = (string) \Illuminate\Support\Str::uuid();
});
}
public function getRouteKeyName()
{
return 'uuid';
}
}