获取Django形式的对象列表

ang*_*rdi 3 python forms django

我正在尝试使用Django创建联系人管理器。我用以下代码创建了一个表单:

class ContactForm(forms.ModelForm):
    first_name = forms.CharField(max_length=20, help_text="First name")
    last_name = forms.CharField(max_length=20, help_text="Last name")
    email = forms.CharField(max_length=100, required=False, help_text="Email")
    phone = forms.CharField(max_length=15, required=False, help_text="Phone")
    company = forms.ChoiceField(widget=forms.Select, choices=Company.objects.all(), required=False, help_text="Company")

    class Meta:
        model = Contact
        fields = ('first_name', 'last_name', 'email', 'phone', 'company')
Run Code Online (Sandbox Code Playgroud)

我在公司领域遇到问题。我不知道如何将所有公司的列表传递到表单,以便它可以在html中显示为选择标记。我相信我必须将其转换为字典,以便“选择”参数起作用,但是我不确定如何做到这一点。

Omi*_*aha 5

使用ModelChoiceField

company = forms.ModelChoiceField(queryset=Company.objects.all(), required=False, help_text="Company")
Run Code Online (Sandbox Code Playgroud)