2016-03-03 65 views
1

我想实现Bootstrap,并认为this library看起来非常整齐。然而,当我尝试使用其中一个模板标签时,没有样式,只是一个普通的HTML格式。东西我已经这样做:使用Bootstrap的Django 3的问题

  • 新增'bootstrap3',settings.py
  • 加载库在我的模板

这里的顶部是我的模板:

{% extends 'base.html' %} 
{% load bootstrap3 %} 
{% bootstrap_messages %} 

{% block title %} 
    Edit {{ thing.name }} - {{ block.super }} 
{% endblock title %} 

{% block content %} 
    <h1>Edit "{{ thing.name }}"</h1> 
    <form role="form" action="" method="post"> 
     {% csrf_token %} 
     {% bootstrap_form form %} 
     {% buttons %} 
     <button type="submit">{% bootstrap_icon "star" %}Submit</button> 
    </form> 
     {% endbuttons %} 

{% endblock content %} 

和公正的记录 - settings.py

INSTALLED_APPS = [ 
    'collection', 
    'bootstrap3', 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sitemaps', 
    'registration', 

] 

任何帮助,非常感谢!

+0

“什么也没有发生” - 你根本没有形式?你得到一个表格,但它没有风格?你根本没有得到HTML?您收到错误讯息? –

+0

@JoshKelley编辑我的问题 – DBE7

回答

3

如果大多数情况下工作正常,但样式丢失,可能是因为您没有拉入Bootstrap CSS。 django-bootstrap3的自述文件省略了这个,但它的quickstart example template有必要的细节。

{# Load the tag library #} 
{% load bootstrap3 %} 

{# Load CSS and JavaScript #} 
{% bootstrap_css %} 
{% bootstrap_javascript %} 

{# Display django.contrib.messages as Bootstrap alerts #} 
{% bootstrap_messages %} 

{# Display a form #} 
<form action="/url/to/submit/" method="post" class="form"> 
    {% csrf_token %} 
    {% bootstrap_form form %} 
    {% buttons %} 
    <button type="submit" class="btn btn-primary"> 
     {% bootstrap_icon "star" %} Submit 
    </button> 
    {% endbuttons %} 
</form> 

(对于一个真正的网站,当然,你可能会想添加{% bootstrap_css %}{% bootstrap_javascript %}你的基本模板。)

+0

什么都没发生...... – DBE7

1

我设法解决我自己的问题。 @JoshKelly的答案是解决方案的一部分。我刚刚在我的{% block %}内容中加载了CSS和Javascript。像这样:

{% extends 'base.html' %} 

{% load bootstrap3 %} 


{% block title %} 
    Edit {{ thing.name }} - {{ block.super }} 
{% endblock title %} 

{% block content %} 
{% bootstrap_css %} 
{% bootstrap_javascript %} 
    <h1>Edit "{{ thing.name }}"</h1> 
    <form role="form" action="" method="post"> 
     {% csrf_token %} 
     {% bootstrap_form form %} 
     {% buttons %} 
     <button type="submit">{% bootstrap_icon "star" %}Submit</button> 
    </form> 
     {% endbuttons %} 

{% endblock content %} 

正如Josh提到的,这看起来不太好看,所以我一定要将它添加到我的base.html中。