我希望我能得到你的建議。如何通過反向關係獲取多對多密鑰的計數?
如果我有一個帶有多對多關係的披薩模型,我可以很容易地得到匹薩上的配料數量。
# models.py
class Pizza(models.Model):
toppings = models.ManyToManyField(Topping)
class Topping(models.Model):
name = models.CharField(max_length=255, null=True, blank=True)
# admin.py
@admin.register(Pizza)
class PizzaAdmin(admin.ModelAdmin):
list_display = ['topping_count']
def topping_count(self, pizza):
return pizza.toppings.count()
但是,如果我將多對多前向關係移至Topping,則這一切都會中斷。
# models.py
class Pizza(models.Model):
pass
class Topping(models.Model):
pizzas = models.ManyToManyField(Pizza)
如何更新PizzaAdmin中的topping_count,以便通過反向關係獲得配料計數?
謝謝。