Django - Нужно ли проверять IntegrityErrors при проверке ModelForm? - PullRequest
0 голосов
/ 25 марта 2020

У меня простой вопрос:

Нужно ли прослушивать IntegrityErrors, когда я уже проверяю целостность отправленной ModelForm с помощью is_valid?

Мой код выглядит так это на данный момент, и я думаю об удалении catch try:

def edit_object(request, object_id):
    o = get_object_or_404(ObjectModel, pk=object_id)
    if request.method == 'POST':
        form = ObjectForm(request.POST, instance=o)
        try:
            if form.is_valid():
                form.save()
                return HttpResponseRedirect(reverse('namespace:startpage')
            else:
                return render(request, 'namespace/editpage.html', {'form': form,})
        except IntegrityError:
            return render(request, 'namespace/editpage.html', {'form': form,})
    return render(request, 'namespace/editpage.html', {'form': ObjectForm(instance=o),})

Поскольку я никогда даже не сохраняю свой объект, если данные недействительны, я никогда не смогу создать исключение IntegrityError, верно ?

Заранее спасибо.

...