Foros del Web » Programando para Internet » Python »

Un usuario solo ve lo que el publica en el backend

Estas en el tema de Un usuario solo ve lo que el publica en el backend en el foro de Python en Foros del Web. Hola a todos Estoy probando Django y me he quedado atascado, intento hacer lo siguiente, quiero que un usuario solo pueda ver en la parte ...
  #1 (permalink)  
Antiguo 07/01/2016, 15:14
 
Fecha de Ingreso: diciembre-2007
Mensajes: 113
Antigüedad: 12 años
Puntos: 0
Un usuario solo ve lo que el publica en el backend

Hola a todos

Estoy probando Django y me he quedado atascado, intento hacer lo siguiente, quiero que un usuario solo pueda ver en la parte de admin lo que el ha publicado.

Por ejemplo tengo 2 usuarios 1 y 2, cada uno podra solo ver lo que el a publicado, no podra ver lo que ha publicado el otro.

En la docu oficial que me la tengo trillada viene una manera con una funcion, la cual tengo implementada asi:

Este es mi admin.py

Código:
from django.contrib import admin

# Register your models here.
from .models import Cerrajero


class CerrajeroAdmin(admin.ModelAdmin):
    def get_queryset(self, request):
        qs = super(CerrajeroAdmin, self).get_queryset(request)
        if request.user.is_superuser:
            return qs
        #print(author = request.user)
        return qs.filter(author = request.user)


admin.site.register(Cerrajero, CerrajeroAdmin)

mi modelo esta asi:

Código:
from django.db import models


# Create your models here.
class Cerrajero(models.Model):
    empresa = models.CharField(max_length=200)
    nombre = models.CharField(max_length=200)

    @property
    def __str__(self):
        return '{} {}'.format(self.empresa, self.nombre)
Cuando estoy con el superusuario, veo los datos de cerrajero perfecto, pero cuando me logeo con otro user el 1 o el 2 , me devuelve este error.

Código:
Cannot resolve keyword 'author' into field. Choices are: empresa, id, nombre
Si alguien supiera decirme donde lo estoy haciendo mal se lo agradezco, ya llevo 2 días con esta prueba, uffff.

Saludos
  #2 (permalink)  
Antiguo 10/01/2016, 11:21
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 14 años, 8 meses
Puntos: 1360
Respuesta: Un usuario solo ve lo que el publica en el backend

El error es bastante obvio, no tienes un campo author en tu modelo Cerrajero.

Etiquetas: django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:20.