Форум сайта python.su
1. Добавьте в форму метод clean_sum, который будет возвращать нужное значение после валидации, или переопределите метод save
2. Устанавливайте chocies в методе __init__. В self.instance будет лежать объект модели
class MySuperForm(forms.ModelForm): my_field = forms.ChoiceField() def __init__(self, *args, **kwargs): super(MySuperForm, self).__init__(*args, **kwargs) self.fields['my_field'].choices = ...
Офлайн
0. Лучше задавать вопрос в новой теме
1.
data = form.save(commit=False) data.lalala = 54 data.tratatat = "FUUUUUUU" data.save(commit=True)
Офлайн
Просто я делаю все ту же форму и поэтому не стал создавать ничего нового.
Код такой:
class AddErn(CreateView): model = Many fields = ['date', 'sum', 'comment', 'category'] def form_valid(self, form): instance = form.save() instance.users.add(self.request.user.id) return super(AddErn, self).form_valid(form)
Офлайн