2016-09-16 64 views
1

我使用semantic-ui作爲的模板香脆形式。當試圖加載它會導致下面的錯誤頁面:呈現香脆形式時的模板語法錯誤

TemplateSyntaxError at /forum/newpost/pqs53kqsbgsqd66pg0i60u-isjtvagbo4ii4q9/

crispy tag's template_pack argument should be in ('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)。

+1

我覺得這個問題是由於香脆形式的內部驗證。嘗試使用https://github.com/alexey-grom/crispy-semantic-ui –

+0

這正是我在安裝crispy時所遵循的頁面。 – Nightwalker

+0

您是否在'INSTALLED_APPS'中添加了'semantic-ui'? –

回答

0

您需要語義的UI添加到CRISPY_ALLOWED_TEMPLATE_PACKS在設置文件

CRISPY_ALLOWED_TEMPLATE_PACKS = ('bootstrap', 'uni_form', 'bootstrap3', 'bootstrap4', 'semantic-ui')