Вывод записей блога на профиль с помощью Python и Django

Я пытаюсь вывести записи из блога определенного пользователя на страницу его профиля и никак не могу понять, как это сделать.

Я относительно новичок в Django и еще не видел здесь записи с представлениями на основе классов.

Вот что у меня есть на данный момент:

views.py

class ProfilePageView(DetailView):
    model = Profile
    template_name = 'registration/user_profile.html'

    def get_context_data(self, *args, **kwargs):
        #users = Profile.objects.all()
        user_posts = blogPost.objects.filter(author=self.request.user)
        page_user = get_object_or_404(Profile, id=self.kwargs['pk'])
        context = super(ProfilePageView, self).get_context_data(*args, **kwargs)
        context["page_user"] = page_user
        return context

models.py

class Profile(models.Model):
    user = models.OneToOneField(User, null=True, on_delete=models.CASCADE)
    bio = models.TextField()
    profile_pic = models.ImageField(blank=True, null=True, upload_to='images/profile/')
    twitter_url = models.CharField(max_length=255, null=True, blank=True)
    linkedIn_url = models.CharField(max_length=255, null=True, blank=True)
    github_url = models.CharField(max_length=255, null=True, blank=True)

    def __str__(self):
        return str(self.user)

    def get_absolute_url(self):
        #return reverse("details", args=(str(self.id)))
        return reverse('home')      

user_posts = blogPost.objects.filter(author=self.request.user) Я бы посоветовал вам проверить орфографию вашего blogPost это модель класса, а класс в python не начинается с маленькой буквы, я думаю, что здесь есть ошибка. И попробуйте поделиться картинкой вашей полной модели.

Вернуться на верх