Files
BetiX/app/Models/Guild.php
Dolo 0280278978
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
Initialer Laravel Commit für BetiX
2026-04-04 18:01:50 +02:00

44 lines
1019 B
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
class Guild extends Model
{
use HasFactory;
protected $fillable = [
'name',
'tag',
'logo_url',
'description',
'owner_id',
'invite_code',
'points',
'members_count',
];
/**
* Der User, dem die Gilde gehört.
*/
public function owner(): BelongsTo
{
return $this->belongsTo(User::class, 'owner_id');
}
/**
* Die Mitglieder der Gilde (Verknüpfung zu Users über die Pivot-Tabelle).
* Dies ermöglicht die Nutzung von attach(), detach() und sync().
*/
public function members(): BelongsToMany
{
return $this->belongsToMany(User::class, 'guild_members')
->withPivot('role', 'joined_at')
->withTimestamps();
}
}