Laravel ist heute eines der beliebtesten PHP-Frameworks und wird aufgrund seiner hervorragenden Funktionen häufig in der Entwicklung von Webanwendungen eingesetzt. Unter diesen ist die Benutzerauthentifizierung eine der am häufigsten verwendeten Funktionen in Laravel-Anwendungen. Laravel bietet ein sehr umfassendes Benutzerauthentifizierungssystem, mit dem sich Anmelde-, Registrierungs- und andere Funktionen problemlos implementieren lassen. Aber manchmal müssen wir das Standardauthentifizierungsfeld ändern. In diesem Artikel erfahren Sie, wie Sie das Benutzerauthentifizierungsfeld in Laravel ändern.
Die Standardbenutzertabelle in Laravel ist users
, die die folgenden Felder enthält: users
,包含以下字段:
id
: 用户IDname
: 用户名email
: 邮箱password
: 密码remember_token
: 记住密码令牌其中,email
和password
是Laravel默认使用的用户认证字段。在登录和注册过程中,Laravel会使用这两个字段进行认证。
有时候,我们需要将默认的用户认证字段更改为其他字段,比如说将username
字段作为认证字段。在Laravel中,我们需要对以下几个地方进行更改:
首先,我们需要更改Laravel生成的users
表的数据库迁移文件,将email
字段改为username
字段,比如下面的迁移文件:
Schema::create('users', function (Blueprint $table) { $table->increments('id'); $table->string('username')->unique(); $table->string('password'); $table->rememberToken(); $table->timestamps(); });
接着,我们需要更改Laravel生成的User
模型文件,将email
字段改为username
字段:
use Illuminate\Notifications\Notifiable; use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable { ... /** * Get the email address used for authentication. * * @return string */ public function getEmailForAuthenticatioo() { return $this->username; } ... }
最后,我们需要更改登录控制器,使用username
字段进行认证。在Laravel中,登录控制器默认为app/Http/Controllers/Auth/LoginController.php
。我们需要在该文件中添加以下代码:
use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class LoginController extends Controller { ... /** * Get the login username to be used by the controller. * * @return string */ public function username() { return 'username'; } ... }
至此,我们已经完成了将username
字段作为认证字段的全部操作。当用户登录或者注册时,Laravel会使用username
字段进行认证。
Laravel默认使用的用户认证字段为email
和password
,但是,有时候我们需要将默认的认证字段更改为其他的字段。本文介绍了如何将用户认证字段更改为username
字段。通过对数据库迁移文件、模型文件和控制器进行更改,我们成功地实现了将username
id
: Benutzer-ID li>name
: Benutzernameemail
: E-Mailpasswort
: Passwort remember_token
: Passwort-Token merkenemail
und password
sind das von Laravel standardmäßig verwendete Benutzerauthentifizierungsfeld. Während des Anmelde- und Registrierungsprozesses verwendet Laravel diese beiden Felder zur Authentifizierung. 🎜🎜Ändern Sie das Standardfeld für die Benutzerauthentifizierung.🎜🎜Manchmal müssen wir das Standardfeld für die Benutzerauthentifizierung in andere Felder ändern, z. B. indem wir das Feld Benutzername
als Authentifizierungsfeld verwenden. In Laravel müssen wir an folgenden Stellen Änderungen vornehmen: 🎜users
-Tabelle ändern, die von generiert wurde Laravel, Änderung Das Feld email
wird in das Feld username
geändert, z. B. die folgende Migrationsdatei: 🎜rrreeeBenutzer
ändern, das Feld E-Mail
in das Feld Benutzername
ändern: 🎜rrreeeBenutzername
zur Authentifizierung verwenden. In Laravel ist der Login-Controller standardmäßig app/Http/Controllers/Auth/LoginController.php
. Wir müssen der Datei den folgenden Code hinzufügen: 🎜rrreee🎜Zu diesem Zeitpunkt haben wir alle Vorgänge zur Verwendung des Felds username
als Authentifizierungsfeld abgeschlossen. Wenn sich ein Benutzer anmeldet oder registriert, verwendet Laravel das Feld username
zur Authentifizierung. 🎜🎜Zusammenfassung🎜🎜Die von Laravel standardmäßig verwendeten Benutzerauthentifizierungsfelder sind email
und password
. Manchmal müssen wir jedoch die Standardauthentifizierungsfelder in andere Felder ändern. In diesem Artikel wird beschrieben, wie Sie das Benutzerauthentifizierungsfeld in ein Benutzername
-Feld ändern. Durch Änderungen an der Datenbankmigrationsdatei, der Modelldatei und dem Controller haben wir das Feld username
erfolgreich als Authentifizierungsfeld implementiert. Diese Maßnahme hilft uns nicht nur, spezielle Geschäftsanforderungen zu erfüllen, sondern verbessert auch die Benutzererfahrung bei der Verwendung der Anwendung. 🎜Das obige ist der detaillierte Inhalt vonSo ändern Sie Benutzerauthentifizierungsfelder in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!