Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

353
Vistas
Django ¿Cómo acceder a otro objeto teniendo un nombre de usuario?

Tengo esto en modelos:

 class CustomUser(AbstractUser): selectat = models.BooleanField(default=False) def __str__(self): return self.username class Score(models.Model): VALUE = ( (1, "Nota 1"), (2, "Nota 2"), (3, "Nota 3"), (4, "Nota 4"), (5, "Nota 5"), (6, "Nota 6"), (7, "Nota 7"), (8, "Nota 8"), (9, "Nota 9"), (10, "Nota 10"), ) user_from = models.ForeignKey(settings.AUTH_USER_MODEL, default=0) user_to = models.ForeignKey(settings.AUTH_USER_MODEL, default=0, related_name='user_to') nota = models.PositiveSmallIntegerField(default=0, choices=VALUE) def __str__(self): return str(self.user_to)

¿Cómo puedo acceder a los objetos de puntuación teniendo al usuario?

Cuando le doy al usuario un objeto para puntuar, puedo obtener las notas.

 x = Score.objects.filter(user_to__username='Fane') x <QuerySet [<Punctaj: Fane>, <Punctaj: Fane>]> for a in x: print(a.nota) 1 5

Quiero usar algo como esto:

 y = CustomUser.objects.get(id=7) x = x.score.all() for a in x: print(a.nota) 1 5

Pero esto no funcionará, me está dando:

 Traceback (most recent call last): File "<input>", line 1, in <module> AttributeError: 'CustomUser' object has no attribute 'score'
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Tiene dos claves externas de CustomUser a Score. El primero, user_from , no establece un nombre relacionado, por lo que usa el valor predeterminado, que es score_set :

 x = y.score_set.all()

El segundo establece un nombre relacionado, por lo que usa eso:

 x = y.user_to.all()

Tenga en cuenta que esto no tiene mucho sentido como nombre relacionado, ya que apunta a puntajes, no a usuarios; probablemente debería ser algo así como scores_to_user .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda