Yii2 advance 和 Laravel 5.3 之间的通用身份验证 table

Common authentication table between Yii2 advance and Laravel 5.3

我已经有一个使用 Yii2 advance 构建的应用程序并且运行良好。

现在,客户的要求是使用 Laravel 5.3 创建新的独立(但与第一个相关)应用程序,并且这个新系统必须使用与 Yii2 相同的数据库。

用户应该能够登录这两个应用程序。

所以,我很好奇这可能吗?

如有任何帮助,我们将不胜感激。

谢谢,

Parth vora

终于可以如愿以偿了

因此,为了使用 Yii2 的 auth table 登录 Laravel 应用程序,您需要在 Laravel 中执行以下步骤:

  • Yii2 使用 "user" 名称作为身份验证 table,而 Laravel 使用 "users"。 所以将其添加到您的用户模型中:

    受保护 $table = "user";

  • Yii2 使用"password_hash" 字段来存储用户密码,而Laravel 使用"password"。 所以将其添加到您的用户模型中:

    public function getAuthPassword()
    {
        return $this->password_hash;
    }
    
  • Yii2 使用 "auth_key" 字段来存储用户的记忆令牌,而 Laravel 使用 "remember_token"。您还需要将此字段的大小从 32 增加到 100,否则您将在注销时收到错误消息。 所以将其添加到您的用户模型中:

    public function getRememberTokenName()
    {
        return 'auth_key';
    }
    

    您还需要将 'auth_key' 字段的大小从 32 增加到 100,否则在注销时会出现错误。

  • Yii2 使用 "int(11)" 作为 created_at 和 updated_at 字段类型,而 Laravel 使用 "timestamp" 类型。 所以将其添加到您的用户模型中:

    受保护的 $dateFormat = 'U';

希望对大家有所帮助。

谢谢