Как редактировать формы, сгенерированные FormSet, сгенерированные modelformset_factory? - PullRequest
0 голосов
/ 20 марта 2019

поэтому у меня есть этот набор форм, который я использую в своем шаблоне:

def manage_authors(request):
    AuthorFormSet = modelformset_factory(Produkt, fields=('nazwa','ilosc','minimum',),extra=0)
    if request.method == 'POST':
        formset = AuthorFormSet(request.POST or None, request.FILES or None)
        if formset.is_valid():
            formset.save()

    else:
        formset = AuthorFormSet()
    return render(request, 'manage_authors.html', {'formset': formset})    

И мне хотелось бы, чтобы я мог редактировать свойства полей, сгенерированных на html-странице, изменять максимальную длину, размер, метку. Сейчас я просто получаю поля по умолчанию, я знаю, как это сделать для предопределенных форм, но как насчет этой ситуации?

1 Ответ

0 голосов
/ 20 марта 2019

Как указано здесь , вы также можете передать свои настроенные ModelForm (например, ProduktForm) на modelform-factory:

AuthorFormSet = modelformset_factory(Produkt, form=ProduktForm, fields=('nazwa','ilosc','minimum',),extra=0)

Кроме того, если вам нужно тольконастроить вещи, которые можно настроить, используя Meta класс ModelForm, вы можете сделать это прямо в своей форме setset_factory:

AuthorFormSet = modelformset_factory(Produkt, fields=('nazwa','ilosc','minimum',), extra=0,
    widgets={'nazwa': Textarea(max_length=20)},
    labels={'nazwa': 'custom label'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...