[英]Django OneToMany relationship using ForeignKey queryset
我在使用ForeignKey的Django框架OneToMany關系中的模型中使用。
我現在需要的,但我不知道該怎么做,是創建一個查詢集以接受表中的任何id排序id如何在表Line中顯示為fk鍵,我想在html頁面中顯示。
例如,我想在html模板中顯示如下內容:
id_order | id_line
1 | 2
2 | 3,4,8
10 | 7
這讓我感到困惑,因為我認為我們需要反轉外鍵。
這是模型:
django.db import models
class Order(models.Model):
order_name = models.CharField(max_length=254)
class Line(models.Model):
f= models.ForeignKey(Order, blank=True, null=True,verbose_name='order')
name = models.CharField(max_length=254)
def __unicode__(self):
return self.name
任何想法如何做到這一點?
我想在訂單表中的數據:
id order_name
1 order 1
2 order 2
10 order 10
線表數據:
id name f_id
2 line 2 1
3 line 3 2
4 line 4 2
7 line 1 10
8 line 5 2
然后我運行以下查詢
lines = Line.objects.select_related('order').values('f_id', 'id')
它將返回以下結果:
<QuerySet [{'f_id': 1, 'id': 2}, {'f_id': 2, 'id': 3}, {'f_id': 2, 'id': 4}, {'f_id': 2, 'id': 8}, {'f_id': 10, 'id': 7}]>
select_related
返回一個QuerySet,它將“遵循”外鍵關系,並在執行查詢時選擇其他相關對象數據。
更新:在模板中
{% for line in lines %}
<p>{{ line.f_id.name }}</p>
{% endfor %}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.