我正在使用Symfony和FOSUserBundle进行身份验证。我认为默认情况下它会针对名为User的实体进行身份验证。我不能使用它,因为它已经用于其他东西。对不同实体进行身份验证的最简单方法是什么?
答案 0 :(得分:0)
您可以使用您选择的名称定义您的用户类,并将其名称放在配置中。
我们打电话给这个班级JamesUser
。
定义您的实体:
<?php
// src/James/UserBundle/Entity/JamesUser.php
namespace Acme\UserBundle\Entity;
use FOS\UserBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
*/
class JamesUser extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
public function __construct()
{
parent::__construct();
// your own logic
}
}
在配置文件中,确保使用正确的类:
# app/config/config.yml
fos_user:
db_driver: orm
firewall_name: main
user_class: James\UserBundle\Entity\JamesUser