有一點背景:我正在嘗試構建一個強大的動態查詢集表單,以允許半功率用戶(市場營銷人員?)深入訪問分析數據。給定QS字段查找鍵,如何在連接中查找字段類型?
我已經建立了一個功能,提供現場查找鍵,例如,給定一個型號,如:
class Profile(models.Model):
user = models.OneToOneField("auth.User")
age = models.PositiveIntegerField()
我有一個返回遞歸函數:
[
'id',
'user',
'user__id',
'user__username',
'user__first_name',
#...snip...
'user__is_active',
'user__date_joined',
#...snip...
'user__groups__permissions',
'user__groups__permissions__id',
'user__groups__permissions__name',
#...snip...
'age',
]
我」什麼在用戶選擇他們選擇的鍵之後,顯示&解釋類似於ModelForm將做的相應標準表單字段(小部件),但是我首先需要該字段的類型。
那麼我將如何去餵養一個功能類似的東西「年齡」,「user__date_joined」和「用戶_ 組 _permissions__name」並取回PositiveIntegerField,的DateField和CharField(分別?)。
我假設Django必須在ORM中這樣做,所以我確信功能被烘焙成Django 某處,我只是沒有找到它。
這當然適用於直接在模型上的任何字段,但是,如果使用任何分隔符(如'__'),則失敗。 – Bryan
@Bryan:我已經添加了一個簡單的例子,使用從Django自己的內部代碼派生的循環,演示瞭如何爲ForeignKey關係執行此操作。 –
謝謝!我會嘗試看看是否有幫助。 – Bryan