Ich habe zwei Modelle User
und Businesses
.Laravel eloquent - ManyToMany, mehr "Rollen" auf Sigel Pivot-Tabelle
Geschäft können viele Benutzer haben und auch das Geschäft viele Benutzer haben kann.
Zum Beispiel:
- John ist ein Admin für Business1.
- John ist ein Superadmin für Business2.
- Mike ist ein Kunde für Business1.
- Mike ist ein Teilnehmer für Business1.
Was ist der beste Weg, diese zu verbinden und sie später abzufragen.
baute ich eine Pivot-Tabelle business_user
und hinzugefügt Schwenksäulen
$table->boolean('superadmin')->default(false);
$table->boolean('admin')->default(false);
$table->boolean('customer')->default(false);
$table->boolean('subscriber')->default(false);
Ist dies der Weg zu gehen oder soll ich es anders machen? Nur andere Dinge, die auftauchen, sind verschiedene Pivot-Tabellen für jeden Typ der Relation, aber es scheint eine schlechte Idee zu sein.
Ich würde fragen diese als:
$user->businesses()->wherePivot('subscriber',true)->get();
Ich hoffe, dass ich nicht die Syntax überall entging, aber wenn ich bitte wegen anderer korrigieren Sie mich tat.
Es gibt auch Redis
als nächsten Schritt.
Vielen Dank für Ihre Zeit. Ich brauche nicht so viel Flexibilität, aber ich brauche benutzerdefinierte Berechtigungen (Abonnent kann nicht die gleichen Dinge wie Admin und ähnliches tun). Ich denke jedoch, dass es mit meiner Einrichtung leicht machbar ist. Ich werde Ihr Beispiel genauer studieren, da es etwas ist, das ich in Zukunft sicher brauchen werde. – dbr