Как использовать Sonata User Bundle без поля электронной почты?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как использовать Sonata User Bundle без поля электронной почты?

Сообщение Anonymous »

Хочу сделать регистрацию и авторизацию с помощью Sonata User Bundle - не только для админов, для всех пользователей.
Но я хочу сделать систему регистрации без электронной почты.
В модели

Sonata\UserBundle\Model\User

Код: Выделить всё

    protected ?string $email = null;

protected ?string $emailCanonical = null;
Оба поля могут иметь значение NULL. Хорошо.

У меня есть класс User

Код: Выделить всё

namespace App\Entity;

use App\Repository\UserRepository;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\DBAL\Types\Types;
use Sonata\UserBundle\Entity\BaseUser;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;

#[ORM\Entity( repositoryClass: UserRepository::class)]
#[ORM\Table( name: 'users')]
#[UniqueEntity(fields: ['username'], message: 'There is already an account with this username')]
class User extends BaseUser
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column(type: Types::INTEGER)]
protected $id = null;
}
Но когда я создаю миграцию, у меня есть:

Код: Выделить всё

... email VARCHAR(180) NOT NULL, email_canonical VARCHAR(180) NOT NULL
... UNIQUE INDEX UNIQ_1483A5E9A0D96FBF ON users (email_canonical)');
email и email_canonical не только не обнуляются, email_canonical имеет уникальный индекс

Где написано, что они не обнуляются? Как это исправить?[/b]

Если я попытаюсь использовать аннотацию в своей сущности «Пользователь»:

Код: Выделить всё

    #[ORM\Column(length: 255, nullable: true)]
protected ?string $email = null;
У меня возникла ошибка при создании миграции

Код: Выделить всё

Duplicate definition of column 'email' on entity 'App\Entity\User' in a field or discriminator column mapping.
Могу ли я удалить или игнорировать электронную почту и email_canonical?
UPD: в проекте нет FOS. Symfony 6.4, PHP 8.3

Подробнее здесь: https://stackoverflow.com/questions/790 ... mail-field
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»