DisableAutoMapping

Дата обновления перевода 2023-09-25

DisableAutoMapping

Это ограничение позволяет отключить Автомаппинг Doctrine в классе или свойстве. Автоматическое отображение позволяет определить правила валидации на основе атрибутов Doctrine. Вы можете использовать это ограничение, если автоматическое отображение включено глобально, но вы всё равно хотите отключить эту функцию для определённого класса или свойства.

??????????? ? ???????? ??? ??????
????? DisableAutoMapping

Базовое применение

В следующем примере ограничения DisableAutoMapping скажет валидатору не собирать ограничения из метаданных Doctrine:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// src/Model/BookCollection.php
namespace App\Model;

use App\Model\Author;
use App\Model\BookMetadata;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;

#[Assert\DisableAutoMapping]
class BookCollection
{
    #[ORM\Column(nullable: false)]
    protected string $name = '';

    #[ORM\ManyToOne(targetEntity: Author::class)]
    public Author $author;

    // ...
}

Опции

Опция groups недоступна для этого ограничения.

Дата обновления перевода 2024-07-25

payload

тип: mixed по умолчанию: null

Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.

Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.