【问题标题】:Common authentication table between Yii2 advance and Laravel 5.3Yii2 Advance 和 Laravel 5.3 通用认证表
【发布时间】:2016-12-12 14:34:17
【问题描述】:

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

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

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

所以,我很好奇这是否可能?

任何帮助将不胜感激。

谢谢,

帕斯沃拉

【问题讨论】:

    标签: authentication yii2 laravel-5.3 yii2-advanced-app


    【解决方案1】:

    终于,我能够实现我想要的。

    所以,为了使用 Yii2 的身份验证表登录 Laravel 应用程序,您需要在 Laravel 中执行以下步骤:

    • Yii2 使用“用户”名称作为 auth 表,而 Laravel 使用“用户”。 因此,将其添加到您的用户模型中:

      受保护的 $table = "用户";

    • 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';

    希望对某人有所帮助。

    谢谢

    【讨论】:

    • 谢谢!这真的很有用。
    • @ZhangBuzz,很高兴我能帮上忙
    猜你喜欢
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多