2015-05-23 2 views
6

Я занимаюсь этим долгое время и экспериментирую, и я не могу понять, что лучший способ сделать это. Я знаю, что делаю это неправильно, поэтому некоторые разъяснения, а также некоторые быстрые примеры помогут много.Django with Twitter Bootstrap3 и темы

Мне было интересно, используя тему bootstrap3 от https://wrapbootstrap.com/ с Django. Я исследовал пакеты django-bootstrap3 и django-bootstrap-themes. На странице github django-bootstrap-themes говорится, что она совместима с bootswatch. Мне не нравятся их темы, поэтому мне было интересно, совместима ли она с темами wrapbootstrap.com. Темы, которые я выбрал бы из wrapbootstrap.com, - это темы «Отзывчивые HTML». Я хотел знать, знает ли кто-нибудь из личного опыта, какой из этих пакетов лучше всего подходит для использования тем из wrapbootstrap.com с помощью django.

Я понимаю, что можно просто взять с темы таблицы стилей, скрипты, поместить их в свои папки в статике и превратить базу HTML в базовый шаблон, а также на другие страницы. Затем установите bootstrap из CDN. Я знаю, что это также возможно с django-bootstrap3. Но я не могу найти ответ нигде относительно того, что в настоящее время является лучшим способом интегрировать одну из этих тем и twitter bootstrap3 на сайт Django и некоторые быстрые примеры этого.

Спасибо, и любой совет для этого поможет тонну.

+1

«Я понимаю, что можно просто взять с темы таблицы стилей, сценарии, поместить их в свои соответствующие папки в статике и превратить базу HTML в базовый шаблон, а также на другие страницы». неправильно с этим подходом? Поскольку эти темы не являются приложениями django, я не могу думать ни о каком другом подходе. – Wtower

+0

Есть пакеты django, о которых я упоминал. Я хотел знать, есть ли у кого-нибудь опыт с ними, и нашел их проще или лучше для интеграции тем бутстрапа. Я знаю, что они добавляют некоторые теги шаблонов и некоторые другие вещи, я хочу услышать некоторые мнения и получить совет по использованию django-bootstrap3 и django-bootstrap-themes вместе с темой, подобной тем, которые отвечают на HTML-темы от wrapbootstrap.com. Я исследовал все пакеты и попробовал, но я не мог обернуть вокруг себя мозг. – shenk

ответ

8

Пакет django-bootstrap3 - приятное приложение-утилита, позволяющее производить меньшую разметку HTML в ваших шаблонах, которые в противном случае потребовались бы для загрузки. Для этой цели используются некоторые дополнительные теги шаблонов.

Я нахожу этот пакет приятным, и иногда я его использую, но, как правило, после того, как вы включились в бутстрап, вы его оцените.

Пакет django-bootstrap-themes похоже на приложение, в котором он также предлагает некоторые шаблонные теги, такие как прежний пакет, но, по-видимому, меньше. Но это также позволяет легко интегрировать темы из Bootswatch в ваши шаблоны Django, что приятно , если вы найдете эти шаблоны привлекательными. За исключением этого я лично не нашел другой причины для его использования. Но опять же, оба пакета могут использоваться вместе, если они вам подходят.

Некоторые примеры:

Для того, чтобы получить самозагрузки происходит в шаблонах без любой другой пакет, вы должны включать в себя следующее в базовой HTML файл:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css"> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css"> 
{# HTML5 shiv and Respond.js for IE8 support of HTML5 elements and media queries #} 
{# WARNING: Respond.js doesn't work if you view the page via file:// #} 
<!--[if lt IE 9]> 
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> 
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> 
<![endif]--> 

И на дно:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> 

С Джанго-bootstrap3 это becomes:

{% load bootstrap3 %} 
{% bootstrap_css %} 
{% bootstrap_javascript %} 

Но некоторые другие разметки очень упрощены.Например это форма начальной загрузки (см the official docs example) стало бы просто, как:

<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> 

Для загрузки начальной загрузки с Джанго-бутстраповских-темы:

{% load bootstrap_themes %} 
{% bootstrap_script use_min=True %} 

И, видимо, это то, как вы будете использовать один из темы из bootswatch:

{% bootstrap_styles theme='cosmo' type='min.css' %} 

Подводя итог, если вы хотите использовать любые другие готовые bootstrap в ваших шаблонах, вам все равно нужно идти со стандартным подходом, который вы описываете в своем вопросе, возможно, используя некоторые из вышеперечисленных инструментов сверху.

+0

Предполагая, что тема имеет свои собственные модификации стилей bootstrap3 по умолчанию для определенных элементов пользовательского интерфейса. Просто включит их таблицу стилей, чтобы они работали или мне пришлось отказаться от обычного загрузочного CSS-файла, действительно ли авторы темы отмечают те вещи, которые важны при попытке переопределить стили по умолчанию? Я знаю, что они, вероятно, все разные. Но есть ли у вас опыт интеграции темы в django и bootstrap3? Можете ли вы дать мне какой-нибудь конкретный совет? – shenk

Смежные вопросы