Django FORM_RENDERER 仅用于前端
Django FORM_RENDERER for frontend only
默认情况下,Django 使用此设置确定表单小部件的来源:
FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
由于我们希望删除所有标签并应用一些覆盖,因此更改为:
FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'
这一切都适用于前端。但是,它使后端无法使用,因为现在那里的所有标签也都被删除了。
我的问题是,如何让 Django 使用管理员的原始设置?
看来你不能把前端和后端分开。最后,我最终创建了我在整个前端使用的自定义 form/widget classes。
步骤是:
- 在模板文件夹中保留 Django 表单的原始副本
- 在您自己的模板文件夹中创建您需要的每个小部件模板的副本
- 创建自定义表单 class 覆盖 init 中的 template_name 以强制使用您的自定义模板。这种形式class可以看作是混合
默认情况下,Django 使用此设置确定表单小部件的来源:
FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
由于我们希望删除所有标签并应用一些覆盖,因此更改为:
FORM_RENDERER = 'django.forms.renderers.TemplatesSetting'
这一切都适用于前端。但是,它使后端无法使用,因为现在那里的所有标签也都被删除了。
我的问题是,如何让 Django 使用管理员的原始设置?
看来你不能把前端和后端分开。最后,我最终创建了我在整个前端使用的自定义 form/widget classes。
步骤是:
- 在模板文件夹中保留 Django 表单的原始副本
- 在您自己的模板文件夹中创建您需要的每个小部件模板的副本
- 创建自定义表单 class 覆盖 init 中的 template_name 以强制使用您的自定义模板。这种形式class可以看作是混合