Django Formset.save() не сохранил модель
Я заменяю метод сохранения своим собственным, где я использую cursor.callproc(prc,params), когда я сохраняю форму в Admin все просто отлично, но когда я сохраняю formset просто на виду - ничего не происходит.
class BaseModel(models.Model):
def save(self):
proc_name="CLN_%s_EDIT" % self._meta.db_table
ret=callproc(self,proc_name)
if not ret:
super(BaseModel,self).save()
def delete(self):
proc_name="CLN_%s_EDIT" % self._meta.db_table
callproc(self,proc_name,'del')
class Meta:
abstract=True
def tarifs(request):
TarifFormSet = modelformset_factory(TarifPlan)#,form=TarifPlanForm)
if request.method == 'POST':
formset = TarifFormSet(request.POST, request.FILES)
if formset.is_valid():
#IPShellEmbed()()
formset.save()
return HttpResponseRedirect('')
# do something.
#else:
#IPShellEmbed()()
else:
formset = TarifFormSet()
c={"formset": formset,}
c.update(csrf(request))
return render_to_response("tarifs.html",c)
2 ответа
Читая это я нашел решить эту проблему - просто добавьте
cursor.connection.commit()
после
cursor.callproc()
Я думаю, что ваша форма не изменилась, и в formset.save_existing_objects()
фактическая экономия пропускается.