Python 如何在Django中按类别对主题排序?
好的,我想在Django中按类别排列我的主题。最好的方法是什么 views.py: models.py:Python 如何在Django中按类别对主题排序?,python,django,Python,Django,好的,我想在Django中按类别排列我的主题。最好的方法是什么 views.py: models.py: 此外,是的,我知道类别拼写错误,我仍然需要添加元。您可以通过以下方式获得类别内的所有主题: {% for category in categorys %} <h1>{{category.title}}</h1> <ul> {% for topic in category.topic_set.all %} <l
此外,是的,我知道类别拼写错误,我仍然需要添加元。您可以通过以下方式获得类别内的所有主题:
{% for category in categorys %}
<h1>{{category.title}}</h1>
<ul>
{% for topic in category.topic_set.all %}
<li>{{topic.title}}</li>
{% endfor %}
</ul>
{% endfor %}
陛下我在类别中创建了一个主题,但它没有出现。@camnooten,检查更新的答案,看看它是否有效。不幸的是,您更新的答案无效。你还有其他建议吗?我的意思是它应该可以工作,代码是正确的,我也测试过它。谢谢,它工作了!我又试了一次,现在成功了。
from django.db import models
# Create your models here.
class Attachment(models.Model):
file = models.FileField()
def __str__(self):
return self.file
class Category(models.Model):
title = models.CharField(max_length=150)
def __str__(self):
return self.title
class Topic(models.Model):
title = models.CharField(max_length=150)
description = models.TextField()
category = models.ForeignKey('Category', on_delete=models.CASCADE)
def __str__(self):
return self.title
class Post(models.Model):
title = models.CharField(max_length=150)
body = models.TextField()
forum = models.ForeignKey('Topic', on_delete=models.CASCADE)
def __str__(self):
return self.title
{% for category in categorys %}
<h1>{{category.title}}</h1>
<ul>
{% for topic in category.topic_set.all %}
<li>{{topic.title}}</li>
{% endfor %}
</ul>
{% endfor %}