У меня есть класс сущностей с двумя свойствами: страна и штат.Записи в базе данных должны быть уникальными.Это означает, что если я отправляю страну = Германия и штат = ВВ в базу данных, она добавляет новую запись, если такая же запись еще не существует.
Однако государственная собственность может быть нулевой, в этом случае она не отображается доктриной (?), И я все еще могу предоставить значение для страны.Проблема в том, что мне не удается сделать эту запись уникальной, то есть вы не сможете вводить одну и ту же страну несколько раз без уникального состояния.Вот где я борюсь.
Я пробовал различные модификации ограничений сущностей.
Вот код, который проверяет, что страна и штат являются уникальной записью в базе данных:
public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addConstraint(new UniqueEntity([
'fields' => ['country', 'state'],
'message' => 'State is already used with this country!',
]));
}