yii2-user 一个好用的用户扩展

最近使用yii2做了一个系统,涉及到了用户登录等等,之前是自己写的一套,后来要添加邮箱验证功能。有点懒,然后看到了yii2-user这个扩展。简单说下,毕竟自己研究也不深。

http://yii2-user.dmeroff.ru/这个是yii2-user的官网。我使用的是基础模板,因此如果有使用高级模板的可以上官网看看。

首先,通过composer安装yii2-user

composer require "dektrium/yii2-user:0.9.*@dev"

安装完后可以在vendor\dektrium中查看到yii2-user

之后修改配置文件web.php 添加

'modules' => [
        'user' => [
          'class' => 'dektrium\user\Module',
          'confirmWithin' => 21600,
          'cost' => 12,
          'admins' => ['admin']
        ],
      ],

同时删除本来的user配置

此外要注意自己写的控制器,model,数据库这些都不能有user

最后执行$ php yii migrate/up --migrationPath=@vendor/dektrium/yii2-user/migrations

这样就可以了。

由于要使用邮件功能,因此我们还要配置好swiftmailer

还是在配置文件web.php  修改本来的mailer配置为

'mailer' => [
        'class' => 'yii\swiftmailer\Mailer',
        'viewPath' => '@app/mailer',
        'useFileTransport' => false,
        'transport' => [
          'class' => 'Swift_SmtpTransport',
          'host' => 'smtp.163.com',
          'username' => '',//自己的用户名
          'password' => '',//自己的密码,有的邮箱是使用授权码
          'port' => '25',
          'encryption' => 'tls',
          ],

具体的host port不同的邮箱不同,可以登录对应邮箱查询。

修改后不要着急,这样是不可能发送成功的,原因很简单。使用swiftmailer发送邮件,要保证发件人和你填的username一样

打开vendor\dektrium\yii2-user 找到Mailer.php

修改sender和username一样就可以

其余对应的都可以修改,大家自己研究下就好了

这样就可以发送邮件了

接下来就是使用yii2-user了

下面是对应功能的url,其余使用和yii2自带的user差不多的

  • /user/registration/register Displays registration form
  • /user/registration/resend Displays resend form
  • /user/registration/confirm Confirms a user (requires id and token query params)
  • /user/security/login Displays login form
  • /user/security/logout Logs the user out (available only via POST method)
  • /user/recovery/request Displays recovery request form
  • /user/recovery/reset Displays password reset form (requires id and token query params)
  • /user/settings/profile Displays profile settings form
  • /user/settings/account Displays account settings form (email, username, password)
  • /user/settings/networks Displays social network accounts settings page
  • /user/profile/show Displays user's profile (requires id query param)
  • /user/admin/index Displays user management interface

例如

       <div class="login-strip">
              <?php 
              if(Yii::$app->user->isGuest)
              {
              ?>
                  <?= Html::a("<i class='icon-plus'></i> 注 册",['/user/registration/register']); ?> |
                  <?= Html::a("<i class='icon-signin'></i> 登 录",['/user/security/login']); ?>
              <?php
              }
              else
              {
              ?>
              <?= Html::a("<i class='icon-signout'></i> 退出",['/user/security/logout']); ?>
              <?php
              }
              ?>
            </div>

其余的对应使用下就好了。

这个只是个很粗略的介绍,具体我也只使用了这些很基本的功能,具体还有例如rabc什么的可以查查官网。

总的来说yii2-user还是个好用强大的东西的。

转载于:https://www.cnblogs.com/icysnow/p/5512523.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值