Поддерживает ли Flow уникальную аннотацию от Doctrine?

Поддерживается ли что-то подобное в Flow?

/**
 * @ORM\Entity
 * @UniqueEntity(
 *     fields={"host", "port"},
 *     errorPath="port",
 *     message="This port is already in use on that host."
 * )
 */
class Service
{

Мне нужно проверить, что один заголовок не используется дважды для одного пользователя.

Редактировать: добавлен валидатор модели для проверки уникальности, но теперь он проверяется во всех действиях: загрузка, обновление и т. Д.

Редактировать 2: "Решено" путем проверки в валидаторе, если объект новый (еще не сохранен). Еще проблема при обновлении уже существующего объекта.

1 ответ

Решение

Вы можете использовать UniqueEntityValidator и аннотировать валидатор только в тех действиях, где вам нужно проверить уникальность. http://flowframework.readthedocs.org/en/latest/TheDefinitiveGuide/PartV/ValidatorReference.html

В качестве альтернативы, вы можете использовать ValidationGroups для проверки только с помощью существующего средства проверки модели в тех местах, где вы хотите, чтобы это произошло. http://flowframework.readthedocs.org/en/latest/TheDefinitiveGuide/PartIII/Validation.html?highlight=validationgroups

Другие вопросы по тегам