Fix form_valid to always save UPS host even if battery formset fails

This commit is contained in:
xiaji
2026-04-30 17:11:09 +08:00
parent 95b91aa6c2
commit e6ef4bcf0e

View File

@@ -118,21 +118,15 @@ class UPSHostUpdateView(UpdateView):
return context
def form_valid(self, form):
context = self.get_context_data()
battery_formset = context['battery_formset']
if battery_formset.is_valid():
self.object = form.save()
battery_formset.instance = self.object
if self.request.POST:
battery_formset = BatteryFormSet(self.request.POST, instance=self.object)
if battery_formset.is_valid():
battery_formset.save()
messages.success(self.request, 'UPS主机和电池信息已更新')
return redirect(self.success_url)
else:
return render(self.request, self.template_name, {
'form': form,
'battery_formset': battery_formset,
'object': self.object,
})
class UPSHostDeleteView(DeleteView):