Page 1 sur 1

[Symfony 2] FOS USERBundle gestion des rôles

Posté : 20 mars 2013, 13:03
par nutella
Bonjour,

Je suis entrain de faire un application, où un utilisateur, peut être un simple utilisateur ou un poète.
J'aimerai que l'utilisateur lors de l'inscription choisisse sont rôles.

Je n'ai pas d'erreur et l'inscription se fait bien, sauf que la valeur de rôles dans ma base reste à nulle.

Mon champs rôles est de la forme suivante :

$builder->add('roles', 'choice', array('choices' => array('ROLE_USER' => 'user', 'ROLE_POETE' => 'poète')));

Merci pour votre aide.

Re: [Symfony 2] FOS USERBundle gestion des rôles

Posté : 20 mars 2013, 15:23
par Yosh
Bonjour,

Je suis entrain de faire un application, où un utilisateur, peut être un simple utilisateur ou un poète.
J'aimerai que l'utilisateur lors de l'inscription choisisse sont rôles.

Je n'ai pas d'erreur et l'inscription se fait bien, sauf que la valeur de rôles dans ma base reste à nulle.

Mon champs rôles est de la forme suivante :

$builder->add('roles', 'choice', array('choices' => array('ROLE_USER' => 'user', 'ROLE_POETE' => 'poète')));

Merci pour votre aide.
Montre nous la class de l'entité.

Re: [Symfony 2] FOS USERBundle gestion des rôles

Posté : 20 mars 2013, 19:24
par nutella
Vous parlez bien de celle que j'ai surchargé ?
Voici celle que j'ai surcharger :
<?php
namespace LorSound\UserBundle\Entity;
 
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Asserts;
use FOQ\ElasticaBundle\Configuration\Search;
use Symfony\Component\Security\Core\User\UserInterface;
 
/**
 * @ORM\Entity
 * @ORM\Table(name="user")
 * @Search(repositoryClass="Acme\ElasticaBundle\SearchRepository\UserRepository")
 * @ORM\Entity(repositoryClass="LorSound\UserBundle\Entity\UserRepository")
 */
class User extends BaseUser implements UserInterface
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;


       /**
     * @var integer
     *
     * @ORM\Column(name="reg", type="string", length=255)
     */
    private $reg;

    /**
     * @var integer
     *
     * @ORM\Column(name="vil",  type="string", length=255)
     */
    private $vil;

    /**
     *
     * @ORM\Column(name="photouser", type="string", length=255)
     */
    private $photouser;


    
     /**
     * @ORM\Column(name="Keywords", type="string", length=255)
     */
    private $keywords;

    /**
     * @var integer
     *
     * @ORM\Column(name="theme", type="smallint")
     * @ORM\ManyToOne(targetEntity="LorSound\LorSoundBundle\Entity\Theme")
     * @ORM\JoinColumn(nullable=false)
     */
    private $theme;


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

        $this->keywords = false;
        $this->setPhotouser('profil.jpg');
        $this->setTheme('style1');
    }


    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set id_reg
     *
     * @param integer $idReg
     * @return User
     */
    public function setIdReg($idReg)
    {
        $this->id_reg = $idReg;
    
        return $this;
    }

    /**
     * Get id_reg
     *
     * @return integer 
     */
    public function getIdReg()
    {
        return $this->id_reg;
    }

    /**
     * Set id_vil
     *
     * @param integer $idVil
     * @return User
     */
    public function setIdVil($idVil)
    {
        $this->id_vil = $idVil;
    
        return $this;
    }

    /**
     * Get id_vil
     *
     * @return integer 
     */
    public function getIdVil()
    {
        return $this->id_vil;
    }


    /**
     * Set photouser
     *
     * @param string $photouser
     * @return User
     */
    public function setPhotouser($photouser)
    {
        $this->photouser = $photouser;
    
        return $this;
    }

    /**
     * Get photouser
     *
     * @return string 
     */
    public function getPhotouser()
    {
        return $this->photouser;
    }

    /**
     * Set musiqueart
     *
     * @param string $musiqueart
     * @return User
     */
    public function setMusiqueart($musiqueart)
    {
        $this->musiqueart = $musiqueart;
    
        return $this;
    }

    /**
     * Get musiqueart
     *
     * @return string 
     */
    public function getMusiqueart()
    {
        return $this->musiqueart;
    }


    /**
     * Set keywords
     *
     * @param string $keywords
     * @return User
     */
    public function setKeywords($keywords)
    {
        $this->keywords = $keywords;
    
        return $this;
    }

    /**
     * Get keywords
     *
     * @return string 
     */
    public function getKeywords()
    {
        return $this->keywords;
    }

    /**
     * Set Genre
     *
     * @param string $genre
     * @return User
     */
    public function setGenre($genre)
    {
        $this->Genre = $genre;
    
        return $this;
    }

    /**
     * Get Genre
     *
     * @return string 
     */
    public function getGenre()
    {
        return $this->Genre;
    }

    /**
     * Set reg
     *
     * @param integer $reg
     * @return User
     */
    public function setReg($reg)
    {
        $this->reg = $reg;
    
        return $this;
    }

    /**
     * Get reg
     *
     * @return integer 
     */
    public function getReg()
    {
        return $this->reg;
    }

    /**
     * Set vil
     *
     * @param integer $vil
     * @return User
     */
    public function setVil($vil)
    {
        $this->vil = $vil;
    
        return $this;
    }

    /**
     * Get vil
     *
     * @return integer 
     */
    public function getVil()
    {
        return $this->vil;
    }


    /**
     * Set theme
     *
     * @param integer $theme
     * @return User
     */
    public function setTheme($theme)
    {
        $this->theme = $theme;
    
        return $this;
    }

    /**
     * Get theme
     *
     * @return integer 
     */
    public function getTheme()
    {
        return $this->theme;
    }  
}