Я получил изображения, работающие с моим шаблоном, но отображаемое изображение является текущим вошедшим в изображение пользователя.
Как мне отфильтровать его так, чтобы Profile.objects.get (user = [владелец пользователя сообщения])?
class PostListView(ListView):
model = Post
def get_context_data(self, **kwargs):
context = super(PostListView, self).get_context_data(**kwargs)
context['user_post'] = Post.objects.filter(user_id=self.request.user.id)
# context['user_profile'] = Profile.objects.get(user=self.request.user.id)
context['user_profile'] = Profile.objects.get(user=1)
return context
Код ошибки говорит: 'PostListView' object has no attribute 'user'
.Я не понимаю этот код ошибки, потому что, насколько я понимаю, модель PostListView
установлена на Post
, которая имеет следующие модели:
class Post(models.Model):
user = models.ForeignKey(to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
title = models.CharField(max_length=200)
text = models.TextField()
...
Другими словами, каждое сообщение, сделанное в блоге, имеетПользователь.
def get_context_data(self, **kwargs):
context = super(PostListView, self).get_context_data(**kwargs)
context['user_post'] = Post.objects.filter(user_id=self.request.user.id)
# context['user_profile'] = Profile.objects.get(user=self.request.user.id)
context['user_profile'] = Profile.objects.get(user=1)
return context
Что, на мой взгляд, self
делает здесь, представляет текущий объект в PostListView, верно?
Можете ли вы пожалуйста ELI5?У меня возникли некоторые проблемы с пониманием документации, так как язык, используемый там, сложен для меня.