Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá....estou fazendo um site que tem um sisteminha de postagem....e eu gostaria de pegar o usuario que efetuou a postagem...
fiz da seguinte forma:
models.py
from django.contrib.auth.models import User
class Posts(models.Model):
titulo = models.CharField(max_length=100,blank=False)
texto = models.TextField()
autor = models.OneToOneField(User,editable=False)
admin.py
from django.contrib import admin
from models import Posts
class PostsAdmin(admin.ModelAdmin):
list_display = ("titulo","autor",)
admin.site.register(Posts, PostsAdmin)
dessa forma...eu já consigo pegar o autor que efetuou a postagem....entretanto eu só posso pegar o usuario que efetuou a postagem uma unica vez....já tentei colocar unique=False porem naum deu certo....alguem pode me ajudar???;;;;;desde já agradeço!!!
vou explicar minha dúvida melhor: eu estou fazendo um site em que eu vou ser o superusuario....e vou cadastrar usuarios comuns na class usuarios da aplicação auth (que o django cria como padrão)...e eu criei uma class no model chamada postagem que todos os usuarios efetuaram postagens...só que nessa postagem eu quero exibir o autor dela....logo eu preciso pegar o usuario que efetuou o login....entendeu?
No list_display do autor está exibindo o quê? Um inteiro ou o nome?
Tente list_display=('título','autor__username')
Não entendi a dúvida.
"Pegar o usuário que efetuou a postagem" => é necessário sobrescrever um determinado método no admin p/ obter esse dado na requisição.
"unique=False" => salvar mais de um registro que contenha um dado repetido em uma mesma coluna