【发布时间】:2026-01-17 15:00:01
【问题描述】:
我有 2 个模型 ...
class PurchaseOrder(models.Model):
po_number = models.IntegerField(unique=True, default=get_po_number)
po_date = models.DateField()
invoice_number = models.ForeignKey(Invoice, on_delete=models.CASCADE)
class PurchaseOrderItem(models.Model):
po_number_fk = models.ForeignKey(PurchaseOrder, on_delete=models.CASCADE)
qty = models.IntegerField()
unit = models.CharField(max_length=100, blank=True, null=True)
description = models.CharField(max_length=255)
unit_price = models.DecimalField(max_digits=6, decimal_places=2)
amount = models.DecimalField(max_digits=6, decimal_places=2)
一个用于采购订单(PurchaseOrder),一个用于特定采购订单中的项目(PurchaseOrderItem)
我正在尝试在一个 TemplateView 中访问两个模型的数据...
class PurchaseOrderDetailView(LoginRequiredMixin, TemplateView):
template_name = 'financial/purchase_orders/purchase_order_detail.html'
def get_context_data(self, **kwargs):
context = super(PurchaseOrderDetailView, self).get_context_data(**kwargs)
context['purchase_order'] = PurchaseOrder.objects.get()
context['item'] = PurchaseOrderItem.objects.filter()
return context
但我不确定如何根据通过 URL 传递的 pk 过滤 purchase_order.pk,也不确定如何根据 purchase_order.pk 过滤 items.po_number_fk。我知道我需要将登录名放入我的 PurchaseOrder.objects.get() 和 PurchaseOrderItem.objects.filter() 但不确定逻辑需要是什么
感谢您提供的任何帮助
【问题讨论】:
标签: django