如何将 class 添加到 Django 国家/地区小部件

How to add a class to the Django countries widget

您好,我正在尝试使用名为 django-countries 的 Django 插件为所有国家/地区添加 select,到目前为止它正在运行,但我如何添加 html class select?

在 Django 中,使用 widget.

将表单字段呈现为 HTML 表示形式

通常,您可以在定义表单时将这些属性指定为小部件的参数,从而使小部件呈现 class 和其他 HTML 属性。例如:

from django import forms

class CommentForm(forms.Form):
    comment = forms.CharField(
        widget=forms.Textarea(attrs={"class": "my-class"})
    )

鉴于您的问题与 django-countries you should try the same by passing your custom attributes when instantiating a CountrySelectWidget 实例中的自定义字段有关。例如:

from django import forms
from django_countries.fields import CountryField
from django_countries.widgets import CountrySelectWidget

class CustomForm(forms.Form):
    country = CountryField().formfield(
        widget=CountrySelectWidget(
           attrs={"class": "my-class"}
        )
    )