不确定这是否有帮助,但您可能想考虑将 django 模板目录添加到设置中的 TEMPLATES 中:
import django
INSTALLED_APPS = [
...
'django.forms',
...]
FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'
TEMPLATE_DIR = os.path.join(APPS_DIR, "templates") # ROOT dir for templates
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [TEMPLATE_DIR, django.__path__[0] + '/forms/templates'],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
这使我能够在我的 ModelForm 中拥有自己的模板,如下所示:
class DealerDepartmentFrom(forms.ModelForm):
error_css_class = "is-invalid"
template_name = "form_templates/custom_form_template.html"
我进入这个兔子洞的原因是为了找到一种将 error_css_class 添加到元素的方法。