FOSUserBundle Symfony2. Дополнительное поле для входа

я использую fosuserbundle для входа в систему пользователей, и это работает нормально.

Но для нового проекта я хочу 3 поля входа, как это:

Field Companyname

Field Username

Field Password

У меня вопрос, как добавить дополнительное поле для аутентификации пользователей?

Пример моего security.yml

безопасность:
кодеры:
FOS \ UserBundle \ Model \ UserInterface: sha512

role_hierarchy:
ROLE_ADMIN:       ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN

providers:
fos_userbundle:
id: fos_user.user_provider.username

firewalls:
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
logout:       true
anonymous:    true

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 }

И вот пример моего класса сущности User. (User.php)

<?php
// src/Acme/UserBundle/Entity/User.php

namespace TommieCrawford\UserBundle\Entity;

use FOS\UserBundle\Model\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;

/**
* @ORM\Entity
* @ORM\Table(name="fos_user")
*/
class User extends BaseUser
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;

public function __construct()
{
parent::__construct();
// your own logic
}
}

Кто-нибудь знает, как это сделать ?!
Может быть, некоторые образцы?

Большое спасибо!

0

Решение

У них этот процесс задокументирован. Иди сюда

https://github.com/FriendsOfSymfony/FOSUserBundle/tree/master/Resources/doc

И прочитайте overriding_*.md документы. Если вы застряли, возвращайтесь сюда.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]