Это сводит меня с ума (я действительно искал повсюду - но я знаю, что это должно быть легко, и я немного задумываюсь)
Как мне добавить фильтр к дочернему элементу родителя (один ко многим)? Приведенный ниже код предоставляет список компаний в таблице, затем на той же странице / в таблице каждая компания имеет список «начислений», который присваивается этой компании; Благодаря ForeignKey и использованию "charge_set" он прекрасно работает. Тем не менее, я хотел бы добавить фильтр к «начислениям» за статус (исключая «непогашенный» статус)
В ROR я бы просто поместил следующий
<% company.charges.where(status: "Outstanding").each do |charge| %>
AIUI, Я не могу сделать это с Python / Django в представлении; так как бы я go добавил простой фильтр к потомку родителя в этом l oop?
from django.db import models
class Company(models.Model):
name = models.CharField(max_length=100)
class Charge(models.Model):
company = models.ForeignKey(Company, on_delete=models.CASCADE)
charge_id = models.CharField(max_length=100)
status = models.CharField(max_length=100)
from django.shortcuts import render
from companies.models import Company, Charge, Filing
from django.http import HttpResponse
def watch_list(request):
companies = Company.objects.order_by('-data_date')
return render(request,'company_watch/watch_list.html',{'companies':companies})
{% for company in companies %}
<tr>
<td>{{company.name}}</td>
<td>
<ul>
{% for charge in company.charge_set.all %}
<li>{{charge.charge_id}}</li>
{% endfor %}
</ul>
</td>
</tr>
{% endfor %}