Guten Abend,
ich bin noch totaler Newbie mit Yii2, finde das aber echt genial! Nun habe ich das Advanced Template installiert und wollte mal nun die User Authentifizierung um eine weitere Spalte "lastlogin_at" (also Timestamp des letzten Logins) erweitern.
Ich habe schon diverse Versuche unternommen, nichts hat aber funktioniert.
-
common/models/User.php um eine Methode erweitert und versucht diese über den SiteController in der Login Action zu benutzen. Das funktionierte nicht (error).
-
jetzt habe ich in der common/models/User.php in der Methode behaviors einen eigenen Behavior namens UserInfo hinzugefügt. Die common/components/UserInfo.php leitet von Behavior ab und hat nur die Methode setLoginTimestamp (siehe unten). Tja… nu stehe ich auf dem Schlauch… wie speichere ich jetzt beim Login denn den Timestamp in der Tabelle?
/common/components/UserInfo.php:
<?php
namespace common\components;
use yii\base\Behavior;
class UserInfo extends Behavior
{
/**
* Set Login Timestamp
*/
public function setLoginTimestamp() {
$this->lastlogin_at = time();
$this->save();
}
}
/common/models/User.php:
public function behaviors()
{
return [
TimestampBehavior::className(),
UserInfo::className(),
];
}
Kann mir hier jemand den Anstoß geben, wie ich da beim Login den Login-Timestamp in die Spalte lastlogin_at hineinbekomme?
Schönen Abend noch,
Stefan