簡體   English   中英

帶選擇的Django CharField,需要模型實例

[英]Django CharField w/Choices, model instance needed

需要在管理員forms.ChoiceField CharField轉換為forms.ChoiceField

這些選擇來自基於模型實例參數的外部API。 由於我需要模型實例,因此將代碼放入ModelForm.__init__()方法中。 這不會將CharField變成ChoiceField

class OfferAdminForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(OfferAdminForm, self).__init__(*args, **kwargs)
        if hasattr(self, 'instance'):
            CHOICES = (
                ('A', 'Choice A'),
                ('B', 'Choice B'),
            )
            category_id = forms.ChoiceField(choices = CHOICES)

CHOICEScategory_id分配放在__init__()可以正常工作。 我認為我遇到了某種競賽狀況,但不確定如何解決它。

我一點都不了解您要在這里做什么,但是您需要將字段分配給字段字典。

self.fields["category_id"] = forms.ChoiceField(choices = CHOICES)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM