Sistema_Gestion_Transporte/project/api/serializers.py

69 lines
2.1 KiB
Python
Raw Normal View History

2023-06-24 13:35:17 -04:00
from rest_framework import serializers
from django.forms.models import model_to_dict
from . import models
2023-06-24 13:35:17 -04:00
class AplicacionSerializer(serializers.ModelSerializer):
class Meta:
model = models.Aplicacion
fields = '__all__'
class TipoDispositivoSerializer(serializers.ModelSerializer):
class Meta:
model = models.TipoDispositivo
fields = '__all__'
class TipoParaderoSerializer(serializers.ModelSerializer):
class Meta:
model = models.TipoParadero
fields = '__all__'
class TipoTransporteSerializer(serializers.ModelSerializer):
class Meta:
model = models.TipoTransporte
fields = '__all__'
class TipoVehiculoSerializer(serializers.ModelSerializer):
class Meta:
model = models.TipoVehiculo
fields = '__all__'
class TipoTratamientoPersonaSerializer(serializers.ModelSerializer):
class Meta:
model = models.TipoTratamientoPersona
2023-06-25 22:41:07 -04:00
fields = '__all__'
class PersonaSerializer(serializers.ModelSerializer):
class Meta:
model = models.Persona
2023-06-25 22:41:07 -04:00
fields = '__all__'
class UsuarioSerializer(serializers.ModelSerializer):
class Meta:
model = models.Usuario
fields = '__all__'
read_only_fields = ['login']
def get_fields(self):
fields = super().get_fields()
action = self.context['view'].action
print({ 'action': action })
if action == 'retrieve' or action == 'list':
fields = {
'login': fields['login'],
'vigente': fields['vigente'],
'rut': fields['rut'],
}
return fields
def to_representation(self, instance):
representation = super().to_representation(instance)
# Elimina el campo que deseas después de la actualización
if 'clave' in representation:
del representation['clave']
return representation
2023-06-25 22:41:07 -04:00
2023-06-26 16:52:08 -04:00
class AuthSerializer(serializers.Serializer):
username = serializers.CharField(required=True)
password = serializers.CharField(required=True, style={'input_type':'password'})