Skip to content

Latest commit

 

History

History
103 lines (83 loc) · 3.11 KB

README.md

File metadata and controls

103 lines (83 loc) · 3.11 KB

Doctrine2 ORM - zizaco/entrust

Latest Stable Version Total Downloads Latest Unstable Version License

THIS PACKAGE IS UNDER DEVELOPMENT

Configuration

Installation

Run $ composer require spotonlive/sl-entrust-doctrine-orm

config/app.php

    'providers' => [
	    (...)
		SpotOnLive\EntrustDoctrineORM\EntrustDoctrineORMServiceProvider::class,
        'Zizaco\Entrust\EntrustServiceProvider',
	    (...)
	]

    'aliases' => [
	    (...)
        'Entrust' => 'Zizaco\Entrust\EntrustFacade'
	    (...)
	]

User.php

use Doctrine\Common\Collections\ArrayCollection;

class User implements \SpotOnLive\EntrustDoctrineORM\Entities\UserRoleInterface
{
    /**
     * @var \SpotOnLive\EntrustDoctrineORM\Entities\RoleInterface[]|ArrayCollection
     *
     * @ORM\ManyToMany(targetEntity="SpotOnLive\EntrustDoctrineORM\Entities\Role")
     * @ORM\JoinTable(name="user_role_linker",
     *      joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(name="role_id", referencedColumnName="id")}
     *      )
     **/
    protected $roles;

    public function __construct()
    {
        $this->roles = new ArrayCollection();
    }

    /**
     * @return ArrayCollection|\SpotOnLive\EntrustDoctrineORM\Entities\RoleInterface[]
     */
    public function getRoles()
    {
        return $this->roles;
    }

    /**
     * @param ArrayCollection|\SpotOnLive\EntrustDoctrineORM\Entities\RoleInterface[] $roles
     */
    public function setRoles($roles)
    {
        $this->roles = $roles;
    }

    /**
     * @param \SpotOnLive\EntrustDoctrineORM\Entities\RoleInterface[] $roles
     */
    public function addRoles($roles)
    {
        $this->roles->add($roles);
    }

    /**
     * @param \SpotOnLive\EntrustDoctrineORM\Entities\RoleInterface[] $roles
     */
    public function removeRoles($roles)
    {
        $this->roles->remove($roles);
    }

    (...)
}

Traits

Use \SpotOnLive\EntrustDoctrineORM\Traits\EntrustDoctrineORMUserTrait in your entity.

Migrations

  • Difference: $ vendor/bin/doctrine-laravel migrations:diff
  • Migrate: $ vendor/bin/doctrine-laravel migrations:migrate

laravel-doctrine/migrations

Dependencies

Doctrine for laravel

Organization & authors