正在使用django管理界面,我有一个具有外键的模型。在该字段中,在查看管理页面时会显示下拉菜单。有没有办法只在is_active = 1的情况下过滤下拉结果?
此致
答案 0 :(得分:2)
limit_choices_to就是你的目标。
如果您只想在ModelAdmin
中进行有限的选择,则应相应地调整ModelForm
。
这样的事情应该这样做:
class YourAdminForm(forms.ModelForm):
class Meta:
model = YourModel
def __init__(self, *args, **kwargs):
super(YourAdminForm, self).__init__(*args, **kwargs)
qs = self.fields['your_fk_field'].queryset
self.fields['your_fk_field'].queryset = qs.filter(is_active=1)
答案 1 :(得分:0)
根据docs
mmmagic
如果您需要访问当前对象,请检查此How do I get the actual object id in a Django admin page (inside formfield_for_foreignkey)?