我有这样的模型:
class B(models.Model):
value = models.CharField(etc...)
class A(models.Model):
name = models.Charfield(
fk = models.ForeignKey(B, etc...)
我的数据库中没有A的实例,但B的实例很少。 我想做的是通过Django模板中的模型(不是实例,因为我没有实例)获取B的所有实例。 我在想,既然模型是一个对象,也许我们可以像传递任何其他对象一样传递它,并以某种方式使用它的属性
示例
在views.py中:
def my_view(request):
B.objects.create(value=1)
B.objects.create(value=2)
B.objects.create(value=3)
return render(request, 'template.html', {'model_a': A}
在template.html中:
...
{% for b in a.fk_set.all %}
{{ b }}
{% endfor %}
...
呈现为
1
2
3
我理解这是错误的,因为没有A实例,db不知道B与A有任何关系
问题:有没有一种方法可以获得我在示例中提到的类似效果
我找到了一种在视图中工作的方法,但在模板中不起作用
您需要的是这一行:
这将提供一个包含所有
B
项的查询集:但这不会在模板中显示任何内容:
您可以将
foo
查询集传递给模板,并对其进行迭代相关问题 更多 >
编程相关推荐