2013-09-05 3 views
2

Я пишу приложение, в котором пользователь может рекомендовать других пользователей, и я должен избегать того, чтобы они сами порекомендовали себя, поэтому я думал, что ограничение NotEqualTo применяется к ключу forint на сущности (An пользователь порекомендовал другого) сделал бы трюк. Проблема в том, что он, по-видимому, принимает только скалярные значения, а не сущности.Использование Symfony 2.3 NotEqualTo Constraint с сущностью

У кого-нибудь есть дополнительная информация об этом? Должен ли я расширить ограничение для этого?

+0

Как насчет [UniqueEntity] (http://symfony.com/doc/current/reference/constraints/UniqueEntity.html)? – Touki

+0

Не получится. Мне не нужно проверять уникальный первичный ключ, мне нужно, чтобы значение PK отличалось от ключа foreing на одном и том же объекте. – danielperaza

ответ

0

Самый простой способ заключается в использовании Callback валидатор с чеком, как:

if ($this->recommender == $this->recommendee) { 
    // ... 
} 

Другим способом было бы создать custom validation constraint.

+0

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

+0

Я попробую и посмотрю, что произойдет. – danielperaza

Смежные вопросы