如何在管理表单中将 Django ForeignKey 值设置为类型整数

How to set Django ForeignKey value as a typed integer in admin forms

我在 Django 中有一个带有外键的模型。现在,管理员默认使用下拉菜单 select 该 ForeignKey 的值。我想要的是能够在那里输入引用对象的 ID,而不是使用下拉列表。

我尝试使用 django.forms.IntegerField 而不是 ChoiceField,但它不起作用。

您可以改为指定 NumberInput widget [Django-doc],因此在您指定的表单中:

class MyModelForm(forms.ModelForm):
    class Meta:
        model = MyModel
        fields = ['name', 'of', 'fields', 'and', <b>'fkfield'</b>]
        widgets = {
            <b>'fkfield': forms.NumberInput()</b>
        }

其中 fkfieldForeignKey 模型字段的名称。