Как упорядочить трясогузку в шаблоне домашней страницы?

#python #django #wagtail

#python #django #трясогузка

Вопрос:

Я хочу отобразить их для своих домашних шаблонов. Как я могу решить проблему, чтобы получить выходные данные для шаблонов? Я создал фрагменты и упорядочил, и теперь не могу получить вывод на своей домашней странице. Я пытался использовать related_name=»question_answer», но здесь это не работает.

     @register_snippet
    class Question(models.Model):
        text = models.CharField(max_length=255)
        slug = models.CharField(max_length=255)
    
        panels = [
            FieldPanel('text'),
            FieldPanel('slug')
        ]
    
        def __str__(self):
            return self.text
    
    
    class Answer(Orderable, models.Model):
        page = ParentalKey(HomePage, on_delete=models.CASCADE, related_name="question_answer")
        question = models.ForeignKey(Question, null = True, blank = True, on_delete = models.CASCADE, related_name = ' ')
        answer = models.CharField(max_length=300)
        url = models.URLField(max_length=200)
    
        panels = [
            MultiFieldPanel([
                SnippetChooserPanel('question'),
            ], heading="Questions"),
            MultiFieldPanel([
                FieldPanel('answer'),
                FieldPanel('url'),
            ], heading="Answers amp; Urls")
        ]
    
        def __str__(self):
            return self.page.title   " -> "   self.question.text
    ```
 

Ответ №1:

Установка related_name="question_answer" родительского ключа означает, что вы можете получить доступ к объектам ответов, связанным со страницей как page.question_answer.all() . Итак, в вашем шаблоне вы можете сделать что-то вроде:

 <h1>Answers</h1>
<ul>
    {% for item in page.question_answer.all %}
        <li>{{ item.answer }}</li>
    {% endfor %}
</ul>
 

Комментарии:

1. Я не знаю, что здесь пошло не так. Я пробовал это раньше и сейчас, но здесь это не работает.