Enzo Yair

fix en serializer edicto/fecha_movimiento

@@ -45,13 +45,9 @@ class EdictoViewSet(mixins.CreateModelMixin, @@ -45,13 +45,9 @@ class EdictoViewSet(mixins.CreateModelMixin,
45 edicto = request.data.get('cuerpo_edicto') 45 edicto = request.data.get('cuerpo_edicto')
46 cantidad_palabras = contador(edicto) 46 cantidad_palabras = contador(edicto)
47 usuario = self.request.user 47 usuario = self.request.user
48 - if request.method == 'PUT':  
49 - fecha = datetime.now()  
50 - else:  
51 - fecha = none  
52 48
53 serializer.save(cantidad_palabras=cantidad_palabras, 49 serializer.save(cantidad_palabras=cantidad_palabras,
54 - fecha_actualizacion=fecha, 50 + fecha_modificacion=datetime.now(),
55 usuario_movimiento=usuario, 51 usuario_movimiento=usuario,
56 ) 52 )
57 53
  1 +# Generated by Django 4.1.9 on 2023-09-13 20:55
  2 +
  3 +from django.db import migrations, models
  4 +import django.utils.timezone
  5 +
  6 +
  7 +class Migration(migrations.Migration):
  8 +
  9 + dependencies = [
  10 + ('edicto', '0016_alter_edicto_fecha_modificacion'),
  11 + ]
  12 +
  13 + operations = [
  14 + migrations.AlterField(
  15 + model_name='edicto',
  16 + name='fecha_modificacion',
  17 + field=models.DateTimeField(auto_now_add=True, default=django.utils.timezone.now),
  18 + preserve_default=False,
  19 + ),
  20 + ]
@@ -37,7 +37,7 @@ class Edicto(models.Model): @@ -37,7 +37,7 @@ class Edicto(models.Model):
37 fecha_publicacion = models.DateField(blank=True, null=True) 37 fecha_publicacion = models.DateField(blank=True, null=True)
38 observaciones = models.CharField(max_length=500, blank=True, null=True) 38 observaciones = models.CharField(max_length=500, blank=True, null=True)
39 fecha_creacion = models.DateField(auto_now_add=True) 39 fecha_creacion = models.DateField(auto_now_add=True)
40 - fecha_modificacion = models.DateTimeField(default=None, null=True, blank=True) 40 + fecha_modificacion = models.DateTimeField(auto_now_add=True)
41 usuario_movimiento = models.ForeignKey(Usuario, on_delete=models.CASCADE, related_name='udate_edicto') 41 usuario_movimiento = models.ForeignKey(Usuario, on_delete=models.CASCADE, related_name='udate_edicto')
42 42
43 class Meta: 43 class Meta:
@@ -40,9 +40,10 @@ class EdictoSerializer(serializers.ModelSerializer): @@ -40,9 +40,10 @@ class EdictoSerializer(serializers.ModelSerializer):
40 40
41 def to_representation(self, instance): 41 def to_representation(self, instance):
42 data = super().to_representation(instance) 42 data = super().to_representation(instance)
43 - user = self.context['request'].user  
44 - if not user.is_staff:  
45 - data['fecha_publicacion'] = instance.fecha_publicacion 43 + if instance.fecha_modificacion is not None and self.context['request'].method == 'PUT':
  44 + data['fecha_modificacion'] = instance.fecha_modificacion
  45 + else:
  46 + data['fecha_modificacion'] = None
46 return data 47 return data
47 48
48 @staticmethod 49 @staticmethod