1
我沿着DAL documentation下一個過濾字段添加到我的形式,但轉發不工作,一個字段連接到其他:Django的自動完成光 - FK域結果不轉發
形式的.py
class PurchaseForm(forms.ModelForm):
commodity = forms.ModelChoiceField(
queryset=Commodity.objects.all(),
widget=autocomplete.ModelSelect2(url='commodity-autocomplete'),
required=False,
)
class Meta:
model = Purchase
fields = ["variety"]
widgets = {
'variety': autocomplete.ModelSelect2(url='variety-autocomplete', forward=['commodity'],
}
Views.py
class VarietyAutocompleteView(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = Variety.objects.all()
commodity = self.forwarded.get('commodity', None)
print("Commodity:" + str(commodity))
if commodity:
qs = qs.filter(commodity=commodity)
if self.q:
qs = qs.filter(name__istartswith=self.q)
return qs
我倒是升將我的各種選擇按照與商品對象的外鍵關係過濾。兩個自動完成字段都可以自行工作,但是commodity
字段中的選項未被轉發至VarietyAutocompleteView
(我的打印命令打印爲Commodity:None
)。這可能是因爲我傳遞了一個外鍵對象?或者我以某種方式錯誤地設置了它?
我正面臨類似的問題..你是如何最終解決這個問題的? –
我從DAL切換到bootstrap-combobox。我會將我的結果代碼發佈在答案中。 –
啊..非常感謝! –