Django: как обеспечить уникальное значение для поля или группы полей в записи / форме - PullRequest
1 голос
/ 18 сентября 2011

Я использую ModelForm, и я доволен проверкой по умолчанию и ошибками.В моем шаблоне я использую простое: {{ form.as_ul }} с блоком {% if form.errors %}.

Модель содержит, помимо прочего, следующие поля:

group1_wish1 = models.CharField(max_length=100, choices=GROUP1CHOICES)
group1_wish2 = models.CharField(max_length=100, choices=GROUP1CHOICES)
group2_wish1 ....
group2_wish2 ....

Каждый пользователь не имеет права делатьодно и то же желание дважды для каждой группы: group_wish1! = group_wish2.

Есть ли вариант проверки для моделей, который позволил бы мне достичь этого?

Я смотрел на unique, но он работает науровень таблицы.

Есть идеи, как я могу сделать это как можно проще?

1 Ответ

0 голосов
/ 18 сентября 2011

Простейшим способом должно быть переопределение метода clean () - формы в определении вашей ModelForm (forms.py).

См. Документацию Django:
Очистка и проверка полей, которые зависят друг от друга
ModelForms: переопределение clean () - метод

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...