0
我在我的项目中有以下模型(在我的项目中,一个站点可以有许多支付处理器和一个支付处理器(Paypal,Payza等)可以属于许多站点)。在Django的模板中显示ManyToManyField
# Models.py
class Sites(models.Model):
name = models.CharField(max_length=75)
link = models.CharField(max_length=150)
description = models.TextField(blank=True, null=True)
def __str__(self):
return self.name
class PaymentProcessors(models.Model):
name = models.CharField(max_length=75)
def __str__(self):
return self.name
class Sites_PaymentProcessors(models.Model):
site = models.ManyToMany(Sites)
payment_processor = models.ManyToMany(PaymentProcessors)
查看:
# View
def home(request):
site_list = Sites.objects.order_by('-date_launched')
processors_list = PaymentProcessors.objects.all()
return render_to_response('index.html', {'site_list': site_list,
'payment_processors_list': processors_list},
RequestContext(request))
模板
# Template
{% for site in site_list %}
{% for payment_processor in payment_processors_list.site.all %}
{{ payment_processor }}
{% endfor %}
{% endfor %}
我想,以显示它属于一个特定站点的所有付款处理器。我试图使用过滤器,但我无法做到这一点。我是Django的新手,我尝试阅读文档并在StackOverflow上看到一些答案,但我不确定要做什么才能正常工作。