Python 按项目所属类别列出项目
我是个十足的新手,所以请容忍我。我以前从未使用过OOP或框架 我正在创建一个簿记系统,希望分类账按其所属类别显示。这是我的模型,它似乎有效:Python 按项目所属类别列出项目,python,django,Python,Django,我是个十足的新手,所以请容忍我。我以前从未使用过OOP或框架 我正在创建一个簿记系统,希望分类账按其所属类别显示。这是我的模型,它似乎有效: class COAGroup(models.Model): Name = models.CharField(max_length=200) def __str__(self): return self.Name class Ledger(models.Model): Name = models.CharField(
class COAGroup(models.Model):
Name = models.CharField(max_length=200)
def __str__(self):
return self.Name
class Ledger(models.Model):
Name = models.CharField(max_length=200)
COAGroup = models.ForeignKey(COAGroup, on_delete=models.CASCADE)
def __str__(self):
return self.Name
我正在开发我的第一个视图,它应该按分类列出所有分类账。乙二醇
<h2>Some COAGroup Name</h2>
<ul>
<li>A ledger that belongs to this group</li>
<li>Another ledger that belonds to the group</li>
<li>And another</li>
</ul>
<h2>Another COAGroup</h2>
<ul>
<li>A ledger that belongs to this second group</li>
<li>Another ledger</li>
</ul>
我已经设法让分类账显示在ListLedgers.html中,但我不知道如何按照我的示例让它们按COA组列出
谢谢大家! 在您看来,您最好已经创建了相关的
分类账
s:
def showledgers(request):
COAGroups = COAGroup.objects.prefetch_related('ledger')
context = {
'groups': COAGroups,
}
return render(request, 'ListLedgers.html', context)
注意:通常Django模型中字段的名称是用snake_大小写的,而不是PerlCase,因此它应该是:name
,而不是name
在您看来,您最好已经创建了相关的
分类账
s:
def showledgers(request):
COAGroups = COAGroup.objects.prefetch_related('ledger')
context = {
'groups': COAGroups,
}
return render(request, 'ListLedgers.html', context)
注意:通常Django模型中字段的名称是用snake_大小写的,而不是PerlCase,因此它应该是:name
,而不是name
你读了吗?你读了吗?谢谢,这几乎奏效了。我不需要做预回迁(代码出错),但是group.ledger\u set.all位完成了这个任务。我还按照您的建议将所有字段转换为snake_case,并查找了其他此类约定,因此我从一开始就正确地编写了。谢谢,这几乎成功了。我不需要做预回迁(代码出错),但是group.ledger\u set.all位完成了这个任务。我还按照您的建议将所有字段转换为snake_case,并查找了其他此类约定,因此我从一开始就正确编写了。
{% for group in groups %}
<h2>{{ group.Name }}</h2>
<ul>
{% for ledger in group.ledger_set.all %}
<li>{{ ledger.name }}</li>
{% endfor %}
</ul>
{% endfor %}