有没有办法将 css 类应用于所有字段,而不是对每个字段执行以下操作。
表格.py
class UserColorsForm(forms.ModelForm):
class Meta:
model = UserColors
exclude = ('userid',)
widgets = {
'text_color': forms.TextInput(attrs={'class': 'color'}),
'background_color': forms.TextInput(attrs={'class': 'color'}),
... 10 more
}
Run Code Online (Sandbox Code Playgroud) 我使用 django v1.11.7 和 Jinja2 v2.10 作为模板引擎。
在我的网站中,我希望使用引导程序呈现表单。我发现django-widget-tweaks可用于此集成。
该包无法与 Jinja 模板一起使用,因为它需要将自定义标签集加载到 Jinja 环境中。加载标签集可能很复杂,因为我可能需要编写扩展。
有没有一种简单的方法可以让 django-widget-tweaks 与 Jinja 一起工作?或者还有其他方法将 boostrap 与 Jinja 集成吗?
我是 django 的新手,我正在尝试实现一个使用小部件调整的表单。
我确实安装了小部件调整(我使用的是 Ubuntu 14.04)
sudo pip install django-widget-tweaks
Run Code Online (Sandbox Code Playgroud)
我的设置文件如下所示:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'core',
'addattr',
'widget_tweaks',
)
Run Code Online (Sandbox Code Playgroud)
html 看起来像这样:
{% extends "base/theme.html" %}
{% load widget_tweaks %}
{% block main_content %}
...more code...
Run Code Online (Sandbox Code Playgroud)
视图中的类和 url 中的链接工作得很好。
但是每次当我尝试加载 html 时,它都会说:
widget_tweaks' is not a valid tag library: Template library widget_tweaks not found, tried django.templatetags.widget_tweaks,django.contrib.admin.templatetags.widget_tweaks,django.contrib.staticfiles.templatetags.widget_tweaks
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮忙吗?提前致谢
我正在尝试使用微件微调来自定义我的Django表单,该微件调整是针对我正在与群组一起构建的应用程序,但我不断收到错误消息:
ModuleNotFoundError: No module named 'widget_tweaks'
我不明白为什么。
我将模块安装在Mac上,$ pip install django-widget-tweaks并放置'widget_tweaks'在INSTALLED_APPS = [...]应用程序settings.py文件的一部分中。在阅读了有关如何使用小部件调整的文档之后,我仅需要看两件事。
settings.py 文件片段:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'PupsToPet.apps.PupstopetConfig',
'widget_tweaks',
#'django.contrib.easy_maps',
]
Run Code Online (Sandbox Code Playgroud) 我正在使用django-widget-tweaks并且无法弄清楚如何将字段变量添加为占位符,如下所示:
<div class="col-sm-10">
{{ field|append_attr:"class:form-control"|append_attr:"placeholder:field.label" }}
{% if field.help_text %}
<p class="help-block"><small>{{ field.help_text }}</small></p>
{% endif %}
</div>
Run Code Online (Sandbox Code Playgroud)
field.label上面没有评估并将字符串"field.label"作为页面上的占位符.
一些SO帖子建议注册一个自定义标签/过滤器,这似乎很简单.