0
我想在documentation之後的外鍵字段中篩選我的管理員選項。Django formfield_for_foreignkey
我的模型很簡單:
class Page(models.Model):
title = models.CharField(max_length=50, null=False, blank=False, default="Title")
layout = models.ForeignKey(Layout, null=False) #This sets the layout for the current page
爲了實現這個目標,我應該這樣做:
class PageAdmin(admin.ModelAdmin):
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == "layout":
kwargs["queryset"] = Template.objects.get_a_queryset()
return super(PageAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
這是工作,但它是通過函數我每次訪問時間爲3次會該頁面共提供5個查詢(3次加2,默認情況下)。它傳遞3次相同的db_field。
我怎樣才能減少到只有1個查詢?這是一種預期的行爲,如果是這樣......爲什麼?
我試過比較調用之間的差異,但一切似乎是完全一樣的(比較每個參數) – cdvv7788 2014-10-30 18:32:47
我可以在週末看看這個,並報告回來。 – 2014-10-30 21:34:27