Django Максимальное поле формы не устанавливается из экземпляра

Я пытаюсь задать моей форме в Django динамическое максимальное значение, основанное на передаваемом ей экземпляре модели (так, чтобы пользователь не мог установить больше гостей, чем разрешено в модели). Я не сталкиваюсь ни с какими ошибками, но это максимальное значение просто не вступает в силу (я могу поместить и сохранить все, что там есть). Помимо использования экземпляра при инициализации, есть ли что-то еще, что должно быть сделано?

Моя форма:


class RSVPForm(forms.ModelForm):
    class Meta:
        model = Invite
        fields = ['rsvp_guests']
        
        def __init__(self, *args, **kwargs):
            super().__init__(*args, **kwargs)
            self.fields['rsvp_guests'].widget.attrs.update(
                {'max': self.instance.max_guests},
            )

Мое представление, в котором передается экземпляр:

def view_rsvp_create(request, id):

    invite = get_object_or_404(Invite, id=id)
    form = RSVPForm(request.POST or None, instance=invite)

    if form.is_valid():

        new_invite = form.save(commit=False)
        new_invite.save()

        return redirect('view_rsvp_overview', name = invite.event.wedding.subdomain, code = invite.guest.code)

    data = {'form': form}
    template='experience/rsvp-create.html'
    return render(request, template, data)

Шаблон:

{% load crispy_forms_tags %}

<form class="form-horizontal form-material" method="post">
{% csrf_token %} {{ form | crispy }}
<div class="form-group">
    <div class="form-group text-center m-t-20">
    <div class="col-12">
        <button class="btn btn-success btn-block btn-lg waves-effect waves-light" type="submit">Add</button>
    </div>
    </div>
</div>
</form>
Вернуться на верх