【发布时间】:2017-01-24 10:55:16
【问题描述】:
我使用 semantic-ui 作为 crispy-forms 的模板。尝试加载页面时会导致以下错误:
/forum/newpost/pqs53kqsbgsqd66pg0i60u-isjtvagbo4ii4q9/处的模板语法错误
crispy 标签的 template_pack 参数应该在 ('bootstrap', 'uni_form', 'bootstrap3', 'foundation-5')
设置文件包含以下条目(以及其他):
CRISPY_TEMPLATE_PACK = 'semantic-ui'INSTALLED_APPS = ('crispy_forms', 'semantic_ui')
这是来自 forumpost_create.html 的模板代码:
{% extends 'forum/layouts/forum_main.html' %}
{% load crispy_forms_tags %}
{% block content %}
<div class="ui main text container">
<form action="" method="post" class="ui form">
{% csrf_token %}
{% crispy form %}
<input type="submit" value="Save" />
</form>
</div>
{% endblock %}
当我在 模板 中使用 form|crispy 时,错误消失了,但随后模板渲染不受影响,即使查看输出 HTML 源代码,也没有任何变化。
来自 forms.py
的代码class ForumPostForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(ForumPostForm, self).__init__(*args, **kwargs)
self.helper = FormHelper(self)
self.helper.layout = Layout(
Fieldset(
'Post body',
'body'
),
ButtonHolder(
Submit('submit', 'Submit', css_class='ui primary button')
)
)
class Meta:
model = ForumPost
fields = ['body']
如何使它工作?是因为我使用的是 semantic-ui 并且需要做一些不同的事情吗? (我遇到的大多数教程都喜欢 bootstrap)。
【问题讨论】:
-
我认为这个问题是由于脆表单的内部验证。尝试使用github.com/alexey-grom/crispy-semantic-ui
-
这正是我安装crispy时所遵循的页面。
-
你在
INSTALLED_APPS中添加了'semantic-ui'吗? -
是的,我在最初的帖子中提到过。
标签: django django-forms django-crispy-forms