в моем приложении Django у меня есть форма с ChoiceField, которая обычно позволяет выбирать диапазон целых значений.
class FormNumber(forms.Form):
list=[]
for i in range(1, 11):
list.append((i,i))
number=forms.ChoiceField(choices=list, initial=1)
Теперь мне нужно переопределить список выбора по умолчанию из метода представления в некоторых случаях, используя меньший диапазон, но пытаясь сделать это таким образом
n=10-len(request.session["items"])
if n>0:
list=[]
for i in range(1, n+1):
list.append((i,i))
form=FormNumber(choices={'number':list}, initial={'number':1})
Я получил TypeError - __ init __ () получил неожиданный аргумент ключевого слова 'выборы'. Я также пытался удалить параметры из класса формы, но получаю тот же результат.
Есть ли способ инициализировать ChoiceField новым списком выбора из представления способом, аналогичным приведенному выше?
Заранее спасибо:)