Browse Source

Verifica se assuntos são diferentes

pull/2875/head
Cesar Carvalho 7 years ago
parent
commit
04e313ed18
  1. 15
      sapl/norma/views.py

15
sapl/norma/views.py

@ -263,10 +263,14 @@ class NormaCrud(Crud):
return initial return initial
def form_valid(self, form): def form_valid(self, form):
dict_objeto_antigo = NormaJuridica.objects.get( norma_antiga = NormaJuridica.objects.get(
pk=self.kwargs['pk'] pk=self.kwargs['pk']
).__dict__ )
# Feito desta forma para que sejam materializados os assuntos antigos
assuntos_antigos = set(norma_antiga.assuntos.all())
dict_objeto_antigo = norma_antiga.__dict__
self.object = form.save() self.object = form.save()
dict_objeto_novo = self.object.__dict__ dict_objeto_novo = self.object.__dict__
@ -284,6 +288,13 @@ class NormaCrud(Crud):
self.object.save() self.object.save()
break break
# Campo Assuntos não veio no __dict__, então é comparado separadamente
assuntos_novos = set(self.object.assuntos.all())
if assuntos_antigos != assuntos_novos:
self.object.user = self.request.user
self.object.ip = get_client_ip(self.request)
self.object.save()
return super().form_valid(form) return super().form_valid(form)

Loading…
Cancel
Save