Я пытаюсь проверить, есть ли дублирующая запись в базе данных перед добавлением записи.Вот мои текущие модели -
class Education(models.Model):
school = models.CharField(max_length=100)
class_year = models.IntegerField(max_length=4, blank=True, null=True, choices=YEAR)
degree = models.CharField(max_length=100, blank=True, null=True)
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
employments = models.ManyToManyField(Employment)
В форме пользователь должен войти в школу.Год обучения и степень необязательны.Чтобы проверить наличие дублирующихся записей, сейчас у меня есть -
if form.is_valid() and request.POST['school']:
school = form.cleaned_data['school']
try:
school_object = Education.objects.get(school=form.cleaned_data['school'],
class_year=form.cleaned_data['class_year'],
degree = form.cleaned_data['degree'])
except (Education.DoesNotExist):
school_object = Education(school=form.cleaned_data['school'],
class_year=form.cleaned_data['class_year'],
degree = form.cleaned_data['degree'])
school_object.save()
profile.educations.add(school_object)
profile.save()
Я получаю ValueError, если class_date не заполнено.Как это исправить, а также при проверке дубликатов?Спасибо.