positibe/user-bundle

Symfony Positibe 用户扩展包

安装: 7

依赖: 0

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

语言:HTML

类型:symfony-bundle

1.1.0 2018-11-30 20:46 UTC

README

此扩展包为 FOSUserBundle 提供了一些 Positibe 集成抽象。

安装

要安装扩展包,只需添加依赖扩展包

php composer.phar require positibe/user-bundle

接下来,确保在您的应用程序内核中启用这些扩展包

<?php
// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new FOS\UserBundle\FOSUserBundle(),
        new Positibe\Bundle\UserBundle\PositibeUserBundle(),
        // ...
    );
}

配置

将所有必要的配置导入您的 app/config/config.yml 基本配置。 # app/config/config.yml 导入: - { resource: '@PositibeUserBundle/Resources/config/config.yml'}

有一些安全配置的抽象

# app/config/security.yml
imports:
- { resource: '@PositibeUserBundle/Resources/config/security.yml'}

security:
    role_hierarchy:

    access_control:
        - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin/, role: ROLE_ADMIN }

您必须实现自己的用户类

<?php

namespace AppBundle\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use FOS\UserBundle\Model\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
use Positibe\Bundle\UserBundle\Entity\Traits\UserTrait;
use Positibe\Bundle\UserBundle\Entity\UserInterface;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;

/**
 * @ORM\Entity
 * @ORM\Table(name="app_user")
 *
 * @UniqueEntity({"username"})
 * @UniqueEntity({"email"})
 */
class User extends BaseUser implements UserInterface
{
    use UserTrait;

    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    public function __construct()
    {
        parent::__construct();
    }
}