Django中引入bootstrap的详细图文详解

yizhihongxing

下面是Django中引入bootstrap的详细攻略和示例说明:

1. 安装Bootstrap

首先,我们需要安装Bootstrap。Bootstrap是一个开源的前端框架,提供了一系列易于使用的HTML、CSS和JavaScript库,可以快速构建美观的响应式网站和应用程序。

有很多种方法可以安装Bootstrap,例如从官方网站下载、使用CDN、使用NPM等。这里我们介绍使用CDN的方法,因为它最为简单。

在网页中添加如下代码,即可使用Bootstap的CSS和JavaScript:

<!-- 引入Bootstrap的CSS和JavaScript -->
<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
<script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>

这里使用的CDN是Staticfile,它是一个免费的CDN服务,提供了许多流行的开源库的文件。

2. 在Django中使用Bootstrap

在Django项目中使用Bootstrap,有以下几种方法:

2.1 使用Bootstrap模板

Bootstrap提供了一些预设样式的HTML模板,可以快速构建常见的页面元素。我们可以直接在Django项目中使用这些模板。

首先,需要在Django中安装Bootstrap。可以使用pip命令安装django-bootstrap4:

pip install django-bootstrap4

然后,在Django中的settings.py文件中添加以下配置:

INSTALLED_APPS = [
    # ...
    'bootstrap4',
    # ...
]

接下来,我们就可以使用Bootstrap提供的模板来构建页面。例如,在Django中定义一个基本的HTML模板,使用Bootstrap提供的导航栏模板:

{% load bootstrap4 %}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{% block title %}{% endblock %}</title>

    {% bootstrap_css %}
</head>
<body>

{% bootstrap_navbar brand="My Website" %}
{% block content %}{% endblock %}

{% bootstrap_javascript jquery='full' %}

</body>
</html>

在这个模板中,我们使用了{% load bootstrap4 %}来加载Bootstrap的模板标签,并使用{% bootstrap_navbar %}来添加一个导航栏。这里的navbar标签会根据指定的参数自动生成一个Bootstrap导航栏。我们还使用了{% bootstrap_css %}和{% bootstrap_javascript %}来导入Bootstrap的CSS和JavaScript文件。

2.2 在Django中使用Bootstrap样式

如果需要自定义页面的样式,我们可以直接在Django中使用Bootstrap提供的CSS类。

首先,在HTML页面中引入Bootstrap的CSS文件:

<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css">

然后,在页面元素中使用Bootstrap提供的CSS类。例如,我们可以定义一个包含表格的页面,使用Bootstrap的样式来美化表格:

{% extends 'base.html' %}

{% block title %}My Website - Table{% endblock %}

{% block content %}
<div class="container">
  <table class="table table-bordered">
    <thead>
      <tr>
        <th>Name</th>
        <th>Age</th>
        <th>Gender</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>John</td>
        <td>28</td>
        <td>Male</td>
      </tr>
      <tr>
        <td>Jane</td>
        <td>23</td>
        <td>Female</td>
      </tr>
    </tbody>
  </table>
</div>
{% endblock %}

在这个页面中,我们使用了Bootstrap的table、table-bordered等样式来美化表格。这些样式可以通过查看Bootstrap的官方文档来了解。

3. 示例说明

下面给出两个示例,分别展示了上面两种方法的使用。

示例1:使用Bootstrap模板

在Django中创建一个新的项目:

django-admin startproject myproject

在项目中创建一个名为common的应用:

cd myproject
python manage.py startapp common

在common应用中创建一个名为base.html的模板。编辑这个模板,添加以下内容:

{% load bootstrap4 %}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{% block title %}My Website{% endblock %}</title>

    {% bootstrap_css %}
</head>
<body>

{% bootstrap_navbar brand="My Website" %}
{% block content %}{% endblock %}

{% bootstrap_javascript jquery='full' %}

</body>
</html>

在common应用中创建一个名为home.html的页面。编辑这个页面,添加以下内容:

{% extends 'base.html' %}

{% block title %}My Website - Home{% endblock %}

{% block content %}
<div class="container">
  <h1>Welcome to my website!</h1>
  <p>This is an example of a Django project that uses Bootstrap for styling.</p>
</div>
{% endblock %}

在项目的urls.py文件中添加以下内容:

from django.urls import path
from common import views

urlpatterns = [
    path('', views.home, name='home'),
]

在common应用的views.py文件中添加以下内容:

from django.shortcuts import render

def home(request):
    return render(request, 'home.html')

启动Django服务器:

python manage.py runserver

访问http://127.0.0.1:8000/,可以看到一个带有导航栏的页面,点击导航栏上的Home链接,可以看到一个包含欢迎信息的页面。这个页面使用了Bootstrap模板来构建导航栏。

示例2:在Django中使用Bootstrap样式

在common应用中创建一个名为table.html的页面。编辑这个页面,添加以下内容:

{% extends 'base.html' %}

{% block title %}My Website - Table{% endblock %}

{% block content %}
<div class="container">
  <table class="table table-bordered">
    <thead>
      <tr>
        <th>Name</th>
        <th>Age</th>
        <th>Gender</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>John</td>
        <td>28</td>
        <td>Male</td>
      </tr>
      <tr>
        <td>Jane</td>
        <td>23</td>
        <td>Female</td>
      </tr>
    </tbody>
  </table>
</div>
{% endblock %}

在项目的urls.py文件中添加以下内容:

from django.urls import path
from common import views

urlpatterns = [
    path('', views.home, name='home'),
    path('table/', views.table, name='table'),
]

在common应用的views.py文件中添加以下内容:

from django.shortcuts import render

def home(request):
    return render(request, 'home.html')

def table(request):
    return render(request, 'table.html')

启动Django服务器:

python manage.py runserver

访问http://127.0.0.1:8000/table/,可以看到一个带有表格的页面,这个页面使用了Bootstrap的样式来美化表格。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Django中引入bootstrap的详细图文详解 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • linux Vue+nginx+django 实现前后端分离

    示例项目 — LuffyCity.com 的上线 具体解释,vue前端提供静态页面,且可以向后台发起get,post等restful请求 django后台提供数据支撑,返回json数据,返回给vue,进行数据页面渲染 下面是部署笔记: — 先从后端搞起 解决环境依赖 — 解决环境依赖的办法: 1 挨个报错的处理 2 pip3 freeze >re…

    Django 2023年4月12日
    00
  • Django解决datetime类型数据不能json序列化问题

      场景: 通常数据库的时间字段都是自动添加,或者datetime形式填入,这时候取出来,如果你不循环把它变成字符串,就会报错Object of type ‘datetime’ is not JSON serializable,所以通过一个继承类方式,来改变datetime类型数据序列化问题,会很方便。   写法: import datetime class…

    Django 2023年4月12日
    00
  • django常用模块汇总

      目录 django常用模块汇总 django常用模块汇总 from django.conf import settings # Django配置文件,自己django项目有配置就用自己的,没有就用系统默认配置。 from django import forms # form组件 class MyForm(forms.Form) from django.f…

    Django 2023年4月11日
    00
  • 使用Python的Django框架结合jQuery实现AJAX购物车页面

    使用Python的Django框架结合jQuery实现AJAX购物车页面的攻略如下: 1. 创建Django项目 首先需要在本地创建一个Django项目,可以使用django-admin.py startproject命令或者使用Django官方推荐的工具django-admin startproject工具创建。 2. 编辑模型 在Django中,我们需要…

    Django 2023年5月16日
    00
  • Django将项目移动到新环境的操作步骤

    Django项目移动到新环境的操作步骤: 导出原项目数据 在原项目的根目录下执行以下命令,导出原项目的数据: python manage.py dumpdata > data.json 备份原项目数据库 使用数据库管理工具(如phpMyAdmin等)备份原项目数据库。 在新环境中安装依赖 在新环境中安装Django所需的依赖,可以使用pip命令进行安装…

    Django 2023年5月16日
    00
  • Django利用Cookie实现反爬虫的例子

    当涉及到爬虫或网站安全时,我们经常会用到Cookie。Django是一个流行的Python Web框架,它使用安全的Cookie来防止爬虫访问网站。下面将演示两个例子,用Django利用Cookie来防止爬虫访问网站的方式。 示例1:使用Django中的装饰器 在Django中,我们可以使用装饰器来检查是否存在正确的Cookie。这里有一个示例,当检测到没有…

    Django 2023年5月15日
    00
  • 【django后端分离】Django Rest Framework之认证系统之redis数据库的token认证(token过期时间)

    1:登录视图 redis_cli.py文件:          import redis          Pool= redis.ConnectionPool(host=’localhost’,port=6379,decode_responses=True)登录视图文件:import redisfrom utils.redis_cli import Poo…

    Django 2023年4月12日
    00
  • django favicon配置

    其实网站加一个图标,在/static/images/里面放置favicon.ico 1. 直接url里修改 from django.views.generic.base import RedirectView favicon_view = RedirectView.as_view(url=’/static/favicon.ico’, permanent=Tr…

    Django 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部