Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ###############View##################
- try:
- serie = TblUsuario.objects.get(usu_username=username)
- if serie is None:
- return JSONResponse({"success": False, "response": "El usuario no existe.."}, status=401)
- except TblUsuario.DoesNotExist:
- return JSONResponse({"success": False, "response": "El usuario no existe."}, status=401)
- serializerUser = UserSerializer(serie)
- if serializerUser.data['usu_password'] != password:
- return JSONResponse({"success": False, "response": "Contraseña incorrecta."}, status=401)
- return JSONResponse(serializerUser.data)
- ###############Serializers###################
- class ActionUserSerializer(serializers.ModelSerializer):
- acc_object = ActionSerializer(source='acc', read_only=True)
- class Meta:
- model = TblAccionUsuario
- fields = ('acc', 'usu', 'acc_object')
- class UserSerializer(serializers.ModelSerializer):
- action_user_values = ActionUserSerializer(many=True, read_only=True)
- class Meta:
- model = TblUsuario
- fields = ('usu_id', 'per_usu_id', 'usu_username', 'usu_password',
- 'usu_fec_creacion', 'usu_activo', 'usu_nombre', 'usu_ apellido1',
- 'usu_apellido2', 'usu_email', 'usu_fono_dijo', 'usu_fono_celular',
- 'action_user_values')
- ################Models#########################
- class TblAccionUsuario(models.Model):
- acc = models.OneToOneField(TblAccion, models.DO_NOTHING, primary_key=True)
- usu = models.OneToOneField('TblUsuario', models.DO_NOTHING, primary_key=True, related_name='action_user_values')
- class Meta:
- managed = False
- db_table = 'tbl_accion_usuario'
- unique_together = (('acc', 'usu'),)
- class TblUsuario(models.Model):
- usu_id = models.AutoField(primary_key=True)
- per_usu_id = models.IntegerField()
- usu_username = models.CharField(max_length=20)
- usu_password = models.CharField(max_length=128)
- usu_fec_creacion = models.DateTimeField(auto_now_add=True)
- usu_activo = models.BooleanField()
- usu_nombre = models.CharField(max_length=50)
- usu_apellido1 = models.CharField(max_length=50)
- usu_apellido2 = models.CharField(max_length=50, blank=True, null=True)
- usu_email = models.CharField(max_length=100, blank=True, null=True)
- usu_fono_dijo = models.CharField(max_length=20, blank=True, null=True)
- usu_fono_celular = models.CharField(max_length=20, blank=True, null=True)
- class Meta:
- managed = False
- db_table = 'tbl_usuario'
- ##########Error##############
- sigos.models.MultipleObjectsReturned: get() returned more than one TblAccionUsuario -- it returned 2!
- ########Respuesta deseada#############
- { #Datos del usuario
- "usu_id": 52,
- "per_usu_id": 1,
- "usu_username": "admin",
- "usu_password": "xcvcxvcxvcxv",
- "usu_fec_creacion": "2018-08-13T16:23:50.968003Z",
- "usu_activo": true,
- "usu_nombre": "asdsadasd",
- "usu_apellido1": "sdfdsfdsf",
- "usu_apellido2": "dsfsdf",
- "usu_email": "sdfdsfsdf@gmail.com",
- "usu_fono_dijo": "+sdffsdf",
- "usu_fono_celular": "+sdfdsfsdf",
- "action_user_values": [ #Actions User relacionadas al usuario (esto es lo que me da error, cuando son más de uno)
- {
- "acc": 1,
- "usu": 52,
- "acc_object": {
- "acc": 1,
- "cat_acc": 1,
- "id_accion_madre": null,
- "acc_nombre": "Listar",
- "acc_url": "/list",
- "acc_imagen": null,
- "acc_orden": 1,
- "acc_mostrar": true,
- "acc_activa": true,
- },
- {
- "acc": 2,
- "usu": 52,
- "acc_object": {
- "acc": 2,
- "cat_acc": 1,
- "id_accion_madre": null,
- "acc_nombre": "Crear",
- "acc_url": "/new",
- "acc_imagen": null,
- "acc_orden": 2,
- "acc_mostrar": true,
- "acc_activa": true,
- }
- ]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement