Есть форма с полем “num_akt”, в котором содержимое устанавливается по умолчанию в вычисляемое значение (номер акта - каждый раз выбирается максимум за текущий год и прибавляется единица).
Последовательность действий:
1. При начальном открытии формы срабатывает нормально. Заполняем форму, сохраняем. Значения записываются в базу.
2. Входим в строку адреса, жмем Enter. Ненужные значения очистились, значение в нужном поле не изменилось(хотя должно было увеличиться на 1).
3. Жмем Enter в строке адреса еще раз - значение меняется (иногда со второго раза).
Кто-нибудь сталкивался с таким поведением? Куда копать?
Форма:
class pidpr_form(ModelForm):
def __init__(self, *args, **kwargs):
if kwargs.has_key('akt_new'):
akt_new = kwargs.pop('akt_new')
super(pidpr_form, self).__init__(*args, **kwargs)
try:
self.base_fields['num_akt'].initial = akt_new
except:
pass
class Meta:
model = pidpr
...
формирование akt_n
...
form = pidpr_form(akt_new=akt_n)
...
return render_to_response('pidpr.html',{
'form':form,
})
...