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

294
Visualizações
Ver lista de solo objetos de usuario actuales, Django REST

Tengo 2 vistas: /notes/ y /notes// En el modelo de notas en models.py Tengo una variable de propietario, que almacena el inicio de sesión del propietario. Como quiero tener muchos usuarios, no quiero que vean las notas de otros, así que creé el permiso:

 class IsOwner(permissions.BasePermission): def has_object_permission(self, request, view, obj): return obj.owner == request.user

Establecí este permiso en NotesList(generics.ListCreateAPIView) y NotesDetail(generics.RetrieveUpdateDestroyAPIView) . Ahora el usuario no puede ver las notas de otros si va a /notes/<pk>/ , pero en /notes/ puede ver la lista completa de todos modos. Entonces, ¿cómo puedo cambiarlo? Quiero ver en la lista de notas solo mis notas. Creo que la forma correcta es filtrar queryset = Snippet.objects.all().filter(owner=...) pero no puedo pensar de inmediato.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Tiene razón, debe anular el conjunto de consultas en la vista de lista. Pero no puede hacer eso en el atributo queryset en sí, porque se ejecuta al inicio del proceso, mientras que necesita acceso a datos que solo están disponibles en el momento de la solicitud. Por lo tanto, debe definir el método get_queryset en esa vista:

 def get_queryset(self, *args, **kwargs): return Snippet.objects.all().filter(owner=self.request.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