#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. Я не знаю, что здесь пошло не так. Я пробовал это раньше и сейчас, но здесь это не работает.