From 30fbaee3c452d1a612b1432ddd5ed0a01cd7ef1a Mon Sep 17 00:00:00 2001 From: Edward Ribeiro Date: Tue, 29 Oct 2019 15:32:47 -0300 Subject: [PATCH] =?UTF-8?q?Reanja=20m=C3=A9todo=20em=203.1.x?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sapl/base/models.py | 36 ---------------------------------- sapl/base/signals.py | 46 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 45 insertions(+), 37 deletions(-) diff --git a/sapl/base/models.py b/sapl/base/models.py index 08fb7a557..f9dfeb382 100644 --- a/sapl/base/models.py +++ b/sapl/base/models.py @@ -310,39 +310,3 @@ class AuditLog(models.Model): self.username, ) - -def cria_models_tipo_autor(app_config=None, verbosity=2, interactive=True, - using=DEFAULT_DB_ALIAS, **kwargs): - - models = models_with_gr_for_model(Autor) - - print("\n\033[93m\033[1m{}\033[0m".format( - _('Atualizando registros TipoAutor do SAPL:'))) - for model in models: - content_type = ContentType.objects.get_for_model(model) - tipo_autor = TipoAutor.objects.filter( - content_type=content_type.id).exists() - - if tipo_autor: - msg1 = "Carga de {} não efetuada.".format( - TipoAutor._meta.verbose_name) - msg2 = " Já Existe um {} {} relacionado...".format( - TipoAutor._meta.verbose_name, - model._meta.verbose_name) - msg = " {}{}".format(msg1, msg2) - else: - novo_autor = TipoAutor() - novo_autor.content_type_id = content_type.id - novo_autor.descricao = model._meta.verbose_name - novo_autor.save() - msg1 = "Carga de {} efetuada.".format( - TipoAutor._meta.verbose_name) - msg2 = " {} {} criado...".format( - TipoAutor._meta.verbose_name, content_type.model) - msg = " {}{}".format(msg1, msg2) - print(msg) - # Disconecta função para evitar a chamada repetidas vezes. - post_migrate.disconnect(receiver=cria_models_tipo_autor) - - -post_migrate.connect(receiver=cria_models_tipo_autor) diff --git a/sapl/base/signals.py b/sapl/base/signals.py index d62d07b8f..a2caf67df 100644 --- a/sapl/base/signals.py +++ b/sapl/base/signals.py @@ -1,7 +1,51 @@ +from django.contrib.contenttypes.models import ContentType +from django.db.models.signals import post_migrate +from django.db.utils import DEFAULT_DB_ALIAS import django.dispatch +from django.utils.translation import ugettext_lazy as _ +from sapl.base.models import Autor, TipoAutor +from sapl.utils import models_with_gr_for_model + + tramitacao_signal = django.dispatch.Signal(providing_args=['post', 'request']) + +def cria_models_tipo_autor(app_config=None, verbosity=2, interactive=True, + using=DEFAULT_DB_ALIAS, **kwargs): + + models = models_with_gr_for_model(Autor) + + print("\n\033[93m\033[1m{}\033[0m".format( + _('Atualizando registros TipoAutor do SAPL:'))) + for model in models: + content_type = ContentType.objects.get_for_model(model) + tipo_autor = TipoAutor.objects.filter( + content_type=content_type.id).exists() + + if tipo_autor: + msg1 = "Carga de {} não efetuada.".format( + TipoAutor._meta.verbose_name) + msg2 = " Já Existe um {} {} relacionado...".format( + TipoAutor._meta.verbose_name, + model._meta.verbose_name) + msg = " {}{}".format(msg1, msg2) + else: + novo_autor = TipoAutor() + novo_autor.content_type_id = content_type.id + novo_autor.descricao = model._meta.verbose_name + novo_autor.save() + msg1 = "Carga de {} efetuada.".format( + TipoAutor._meta.verbose_name) + msg2 = " {} {} criado...".format( + TipoAutor._meta.verbose_name, content_type.model) + msg = " {}{}".format(msg1, msg2) + print(msg) + # Disconecta função para evitar a chamada repetidas vezes. + post_migrate.disconnect(receiver=cria_models_tipo_autor) + + +post_migrate.connect(receiver=cria_models_tipo_autor) post_delete_signal = django.dispatch.Signal(providing_args=['instance', 'request']) -post_save_signal = django.dispatch.Signal(providing_args=['instance', 'operation', 'request']) \ No newline at end of file +post_save_signal = django.dispatch.Signal(providing_args=['instance', 'operation', 'request'])