Как я могу получить вопрос пользователя из представления, у которого уже есть slug

Я пытаюсь получить вопрос пользователя из представления public_profile, которое использует slug для получения информации о профиле пользователя, и теперь я хотел получить вопрос пользователя в представлении public_profile, которое использует slug, но это дает мне ошибку Page not found (404). Я хочу, чтобы пользователи могли видеть вопросы других пользователей на странице своего профиля. Как я могу решить эту проблему, чтобы получить вопрос пользователя, когда кто-то посетил его страницу профиля?

Модель вопроса:

class Question(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    title = models.CharField(max_length=100, blank=False, null=False)
    body = RichTextField(blank=False, null=False) 
    category = models.ForeignKey(Category, on_delete=models.CASCADE)
    slug = models.SlugField(unique=True, max_length=200)

    def save(self, *args, **kwargs):
        self.slug = slugify(self.title)
        super(Question, self).save(*args, **kwargs)

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

Вид:

@login_required(login_url='login')
def public_profile(request, slug):
    profile = get_object_or_404(Profile, slug=slug)
    questions = get_object_or_404(Question, slug=slug)
    number_of_likes = Like.objects.filter(post__user=request.user).count()
    try:
        number_of_likes = Like.objects.filter(post__user=profile.user).count()
    except ObjectDoesNotExist:
        number_of_likes = None
    context = {
        'profile':profile,
        'number_of_likes':number_of_likes,
        'questions':questions
    }
    return render(request, 'public_profile.html', context)

мой шаблон:

<div class="container">
        <div class="row justify-content-center">
           <div class="col">
            <ul class="list-group">
              <li class="list-group-item">{{question.title}}</li>
            </ul>
          </div>
        </div>
       </div>

Урлы:

    path('userProfile/<slug:slug>/', views.public_profile, name='Public_Profile'),

Я бы изменил следующую строку на

profile = get_object_or_404(Profile, slug=slug)

to

profile = get_object_or_404(Profile, user=request.user)

Скорее всего, вы хотите использовать slug для получения Question, а не User Profile.

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