如何在 django modelform 中的必填字段后添加 *?

Posted

技术标签:

【中文标题】如何在 django modelform 中的必填字段后添加 *?【英文标题】:How add a * after required fields in django modelform? 【发布时间】:2012-10-14 06:09:29 【问题描述】:

我有一个 django modelform,其中一些字段是必需的。我正在使用 form.as_p ,我没有单独访问这些字段。

那么如何在表单中为该必填字段添加星号 (*)?

【问题讨论】:

【参考方案1】:

最简单的方法是更改​​标签

class Form(ModelForm):
    model = <model>
    labels = 
        "<field_name>": "<label>*",
    

或者您可以使用小部件为字段设置 id 并为该 id 设置标签:

class Form(ModelForm):
    model = <model>
    widgets = 
        "<field_name>": "<widget_obj>(attrs="id": "<id>")*",
    

【讨论】:

【参考方案2】:

如果您不会单独访问字段(例如使用 form.as_p ),那么您可以将属性添加到您的 ModelForm:

class FooForm(forms.ModelForm):
    required_css_class = 'required'

这会将所有需要的字段定义为具有“必需”类

然后您可以使用 CSS 添加星号:

<style type="text/css">
    .required:after  content: '*'; 
</style>

【讨论】:

以上是关于如何在 django modelform 中的必填字段后添加 *?的主要内容,如果未能解决你的问题,请参考以下文章

将值传递给不是来自 Django ModelForm 中的输入的必填字段

使用 Django ModelForm 时标记必填字段的标签

Django ModelForm booleanfield 必填字段不起作用

如何更新嵌套数组MongoDb Node js中的必填字段[重复]

如何在 django ModelForm CharField 之后添加“星 *”?

模型表单中的 Django 必填字段