Начал изучать этот фреймворк и не могу понять как правильно решить задачу авторизации пользователей, хранящихся в БД.
После прочтения документации, к сожалению на английском языке, с котором я не очень дружу, стало понятно, что сие надо делать с помощью FOSUserBundle.
Кое как установив по инструкциям у меня появилась возможность создавать пользователей, группы.
Но как всегда появились вопросы, на которые я не нашел ответы в документации.
1)Есть некая сущность users которая наследует FOS\UserBundle\Model\User.
в ней указаны дополнительные записи
<?php
namespace ACVote\UsersBundle\Entity;
use FOS\UserBundle\Model\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="Users")
*/
class Users extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(name="name", type="string", length=255, nullable=true)
*/
private $name;
/**
* @ORM\Column(name="surname", type="string", length=255, nullable=true)
*/
private $surname;
/**
* @ORM\ManyToMany(targetEntity="ACVote\UsersBundle\Entity\Groups")
* @ORM\JoinTable(name="fos_user_user_group",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")}
* )
*/
protected $groups;
public function __construct()
{
parent::__construct();
// your own logic
}
Поля имя фамилия появились, а поле группы нет. почему? Сущность для группы создана. таблица в базе есть.
2)При регистрации пользователя ему по умолчанию не присваивается никакой роли, группы и нельзя указать имя и фамилию как это исправить. я так понимаю нужно от чего то отнаследоваться и написать этот функционал там. не понятно от чего наследоваться и что предопределять.
3)При создании группы аналогично не знаю как и где указать роли этой группы.
4)И наверное самое не понятное это как заменить стандартные шаблоны своими заранее сделанными.