Можно ли обойти правила проверки в формах? - PullRequest
0 голосов
/ 01 ноября 2010

У меня есть простое приложение для рассылки новостей с моделью подписки с полями email и city. В этой модели я установил unique_together ('email', 'city'), чтобы избежать дубликатов подписки.

class Subscription(models.Model):

    email = models.EmailField(_('Email'), max_length=75)
    create_date = models.DateField(_("Creation Date"))
    city = models.ForeignKey(City)

    class Meta:
        unique_together = ('email', 'city')

Я создал формы. Модель из этой модели:

class SubscriptionForm(forms.ModelForm):

    class Meta:
        model = Subscription

Это нормально, когда я создаю подписку, но когда я хочу удалить подписку, используя ту же форму, форма не проверяется при настройке существующей пары электронная почта / тема из-за уникального_теложника в модели. Есть ли способ обойти это правило проверки или я должен написать специальную форму для отказа от подписки?

Спасибо

1 Ответ

0 голосов
/ 02 ноября 2010

Возможно, вы можете переопределить unique_together в вашем SubscriptionForm, но это удалит проверку из вашей формы (и потерпит неудачу, когда вы сохраните модель). Или вы можете создать новый UnSubscriptionForm, который переопределит этот параметр unique_together только для отказа от подписки.

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