From 2d8752f863f82d36483bb49687eb287296faa906 Mon Sep 17 00:00:00 2001 From: gouki Date: Mon, 12 Oct 2026 23:07:10 +0000 Subject: [PATCH] fix(auth): return empty string from getAuthPassword for legacy null passwords (recaller hash_equals TypeError) --- app/Models/User.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/Models/User.php b/app/Models/User.php index 5f4eeaf..e9e6538 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -80,6 +80,15 @@ class User extends Authenticatable implements FilamentUser return $this->hasMany(Post::class); } + /** + * 兼容老用户 password 为 null:remember-me 校验时 hash_equals 不接受 null, + * 返回空串使其校验失败并忽略 recaller,而不是抛 TypeError 造成全站 500。 + */ + public function getAuthPassword() + { + return $this->password ?? ''; + } + public function comments(): HasMany { return $this->hasMany(Comment::class);