Django表单选项在页面刷新时消失

2024-10-01 00:16:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Django表单,它有一个select字段,用于为ForeignKey关系选择用户。最初,当页面加载时,它显示“选择”字段,并将所有用户作为选项。刷新页面(或由于验证错误而重新加载)时,“选择”字段没有选项。继续刷新有时会加载它们,但并不一致。在

在表单.py公司名称:

user_choices = ((obj.id, obj.email) for obj in User.objects.all())

class EditContentForm(forms.ModelForm):
    class Meta:
        model = Content
        fields = ['title', 'user']

    def __init__(self, *args, **kwargs):
        super(EditContentForm, self).__init__(*args, **kwargs)
        self.fields['title'].widget = TextInput(attrs = {'class' : 'form-control'})
        self.fields['user'].widget = Select(attrs = {'class' : 'form-control'}, choices = user_choices)

我已经使用Django表单多次执行此操作,但从未见过此问题。如果有任何想法,谢谢。在


Tags: django用户selfobj表单fieldstitleinit
1条回答
网友
1楼 · 发布于 2024-10-01 00:16:54

出于某种原因,你在使用生成器进行选择。第一次之后,它会筋疲力尽的。在

至少,您应该将该定义移动到__init__方法中。在

相关问题 更多 >