Dieser Artikel ist ein Beispiel, wie einfach das Hinzufügen von beliebigen Daten zur Yii User Identity Class ist. Dieser Artikel ist Teil der Artikelserie über das Yii User Management.
In diesem Artikel möchte ich zeigen, wie es möglich ist, schon beim Loginprozess noch weitere Daten im System zu speichern. In vielen Fällen ist es sinnvoll, schon direkt nach der Login Prozedur auf die Benutzerdaten zugreifen zu können.
- Teil 1 – Eigenes YII User Management
- Teil 2 – Erstellen der Yii UserIdentity und was diese genau ist
- Teil 3 – Erweiterungen und verbesserungen für die Yii User Identity
- Teil 4 – Rollenbasierte Rechte, Business Regeln und Tätigkeiten
- Teil 5 – Der Yii AuthManager für das User Management in Yii
- Teil 6 – Datenbankstruktur und Yii CDbAuthManager
- Teil 7 – Erstellen der Rollen, Tätigkeiten und Business Regeln
- Teil 8 – Eine Verwaltung für die Rollen und Business Regeln
- Teil 9 – Eine Verwaltung für die Tätigkeiten
- Teil 10 – Abschluss des Themas und Fazit
Wie schon erwähnt, möchte ich hier noch einige Anmerkungen zum letzten Artikel machen. Wir möchten in der Yii User Identity Class gleich noch weitere Daten des Benutzers setzen, so dass diese direkt nach dem Login Prozess zur Verfügung stehen. Glücklicherweise bietet uns die Yii User Identity Class diese Möglichkeiten schon ohne weitere Implementierung neuer Methoden.
Mit folgendem Code können wir beispielsweise weitere Benutzerdaten zu den Identitätsdaten des Benutzers speichern:
1 | $this->setState('vorname', $vorname); |
Wie wir sehen, können wir also hier in der Yii User Identity Class noch beliebige weiter Daten setzen. Auf diese Daten können wir dann mit der Yii CWebUser Instanz darauf zugreifen. Und genau dies erfolgt genauso wie wir den Login ansteuern.
1 2 | // Folgendes Beispiel würde uns dann also den Vornamen des Benutzers ausgeben echo YII->app()->user->vorname; |
So ist es dann direkt nach dem Login möglich, schon im Ausgabeseite den Vornamen des Benutzers an zu zeigen. Viele Systeme machen nach dem Login erst einen Reload oder man muss sich um diese Daten zur Laufzeit wirklich selbst kümmern.
Da die Yii User Identity Class von CUserIdentity abgeleitet ist und diese wiederrum von CComponent, haben wir hier alle üblichen Möglichkeiten einer Komponente. Wir können der Yii User Identity Class noch Events anhängen oder wie es in Yii eben auch mit Behaviors gemacht wird. Dabei verhält sich die Yii User Identity Class ebenso, wie jede andere beliebige Klasse die von CComponent abgeleitet wurde.
Zum Thema Yii Events und Yii Behaviors werde ich bei Gelegenheit noch einen eigenen Artikel verfassen.
Pingback: Erstellen der Yii UserIdentity und was diese genau ist
Pingback: Eigenes YII User Management – Teil 1 | Web-Entwicklung live
Pingback: Yii RBAC – Rollenbasierte Rechte und mehr – Teil 4 | Web-Entwicklung live