如何在特定的django表单中执行此操作?

如何在特定的django表单中执行此操作?,django,Django,嗯。不过,我已经完全改变了这个问题,感谢您回答如何在django表单中创建文本区域 我的问题定义是:我需要显示一个页面,其中包含从模型中随机选择的5个问题。在每个模型之间插入一个文本区,供用户填写答案并提交。所有答案将以一种方式存储,以便将来根据问题引用 我可以创建一组文本框,但如何显示问题?模型 为了使代码更改生效,您通常必须重新启动Django应用程序 有几种方法可以显示CharField的Textarea小部件,如果没有这些小部件,听起来就像是您想要的 从Django文档: # overr

嗯。不过,我已经完全改变了这个问题,感谢您回答如何在django表单中创建文本区域

我的问题定义是:我需要显示一个页面,其中包含从模型中随机选择的5个问题。在每个模型之间插入一个文本区,供用户填写答案并提交。所有答案将以一种方式存储,以便将来根据问题引用

我可以创建一组文本框,但如何显示问题?模型

  • 为了使代码更改生效,您通常必须重新启动Django应用程序

  • 有几种方法可以显示CharField的Textarea小部件,如果没有这些小部件,听起来就像是您想要的

  • 从Django文档:

    # override individual field
    class AuthorForm(ModelForm):
        class Meta:
            model = Author
            fields = ('name', 'title', 'birth_date')
            widgets = {
                'name': Textarea(attrs={'cols': 80, 'rows': 20}),
            }
    
    # in admin site, override all fields of a certain type
    class MyModelAdmin(admin.ModelAdmin):
        formfield_overrides = {
            models.CharField: {'widget': forms.Textarea},
        }
    
    您还可以创建一个自定义字段,对CharField进行子分类,并将Textarea指定为默认小部件,然后在您的模型中使用它

    不过,最好的方法(仅适用于ModelForm)可能是下面的答案:


    编写formfield\u回调函数并将其附加到ModelForm类。

    好的,要回答您的新问题

    你将得到一个答案模型,用一个外键返回一个问题

    因此,您的答案文本区域可以是针对每个问题的内联表单集:

    既然您已经使用了
    Textarea
    (否定我的答案),我想您必须向我们展示一个您试图实现的示例。我可以使用formset。但是,当我遍历表单集时,如何输入特定模型的值?我不知道你在问什么我已经编辑了这个问题