Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

358
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda