NotBlank валидатор проверяет, что значение не является false
, null
, пустым массивом или пустой строкой. Большинство других ограничений игнорируют нулевые значения, но NotBlank проверяет их. Это вызывает проблемы в сценариях, таких как API, вызываемые из внешнего кода, где проще включать пустые поля вместо удаления этих полей при выполнении запросов.
В Symfony 4.3 улучшили ограничение NotBlank, добавив в него новую опцию allowNull
. По умолчанию эта опция имеет значение false
, чтобы сохранить текущее поведение. Если вы установите значение true
, тогда нулевые значения будут считаться действительными, а не вызывать нарушение ограничения:
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class SomeEntity
{
/**
* @Assert\NotBlank(allowNull = true)
*/
protected $someProperty;
}