Не могу инициализировать выпадающий список в форме класса.
Пробовал делать через initial, но на форму это никак не повлияло, а через __init__ выдает ошибку:
list indices must be integers, not str
class AddCost(CreateView): category_list = Category.objects.filter(operation_type=1) categorys = [(i.id, i.name) for i in category_list] model = Many fields = ['date', 'sum', 'comment', 'category'] # initial = {'category':categorys} def __init__(self, *args, **kwargs): category_list = Category.objects.filter(operation_type=2) categorys = [int((i.id)) for i in category_list] super(AddCost, self).__init__(*args, **kwargs) self.fields['category'].initial = categorys def form_valid(self, form): data = form.save(commit=False) if data.sum > 0: data.sum *= -1 instance = form.save(commit=True) instance.users.add(self.request.user.id) return super(AddCost, self).form_valid(form)
И еще вопрос. Как можно передать username на страницу с формой из этого класса?