Я создаю REST API с помощью Symfony. Допустим, у меня есть следующая сущность Doctrine:
class Car {
private $model;
private $make = 'Mercedes';
/** @Assert\NotBlank() **/
private $year;
}
Когда я пытаюсь создать новый Car
с помощью HTTP-запроса POST (REST, без браузера), если запрос не содержит никакого значения для свойства $make
, по умолчанию метод Form::submit()
обнуляет это поле в моей сущности. Поскольку я не хочу, чтобы это происходило, я установил для его аргумента clearMissing
значение false. Это отлично работает, за исключением того, что теперь мои @Assert
ограничения не принимаются во внимание (в отличие от того, когда clearmissing
равно true
). Например, свойство $year
не вызывает никаких ошибок, если null
, похоже, проверка не выполняется.
Итак, я хотел бы знать, есть ли способ получить:
- свойства со значениями по умолчанию в моей сущности
- плюс отсутствие обнуления полей для отсутствующих данных
- плюс соблюдены ограничения @Asserts
Примечание:
Я нашел проблему на Github двухлетней давности, которая точно описывает мою проблему, но проблема в том, предполагается исправить. Так что он не должен быть таким же, как у меня ...