使用Bootstrap前端框架结合Django来开发web页面

知识面:
Bootstrap来自Twitter,是前端框架,基于HTML、CSS、JavaScript,简洁灵活,web开发便捷。由动态CSS语言Less写出。
PyPi仓库地址:https://pypi.org/project/django-bootstrap3/
打开终端,执行如下命令:

pip install django-bootstrap3

xiaoxideMacBook-Pro:~ xiaoxi$ pip3 install django-bootstrap3
Collecting django-bootstrap3
  Downloading https://files.pythonhosted.org/packages/cc/9d/3e3b8c24db9790a9c7029e2c74e44236173a85fb7652657d39d587aab9a9/django_bootstrap3-12.0.3-py3-none-any.whl
Installing collected packages: django-bootstrap3
Successfully installed django-bootstrap3-12.0.3
xiaoxideMacBook-Pro:~ xiaoxi$ 

安装成功后,在项目MangerPlan/settings.py文件中添加“bootstrap3”应用。

settings.py

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'plan'
    'bootstrap3'
]

以下即将完成计划管理列表

打开/plan/views.py文件,修改plan_manage()函数

views.py

from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.
from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render
from django.contrib import auth
from django.contrib.auth.decorators import login_required
from plan.models import Requirement

# 创建views
def index(request):
    return render(request, "index.html")


# 创建views
def role_list(request):
    return render(request, "role_list.html")


# 创建views
def plan(request):
    return render(request, "plan.png")


# 登录动作
def login_action(request):
    if request.method == 'POST':
        username = request.POST.get('username', '')
        password = request.POST.get('password', '')
        user = auth.authenticate(username=username, password=password)
        if user is not None:
            auth.login(request, user)  # 登录 login函数接收HttpReques对象和一个user对象
        # if username == 'dnxu' and password == '1':
            # return HttpResponse('login success!') # 简单返回提示
            # return HttpResponseRedirect('/plan_manage/') # 重定向要plan_manage.html页面
            response = HttpResponseRedirect('/plan_manage/')
            # cookies中三个参数分别为:user为浏览器cookie名, 第二个为用户在登录页面中输入的用户名(username),
            # 第三个参数用于设置cookie信息在浏览器中保持的时间,默认单位为秒
            # response.set_cookie('user', username, 3600) # 添加浏览器cookie
            request.session['user'] = username  # 将session信息记录到浏览器
            return response
        else:
            return render(request, 'index.html', {'error': 'username or password error!'}) # {}里的是错误提示的字典


# 计划管理
@login_required
def plan_manage(request):
    requirement_list = Requirement.objects.all()
    # username = request.COOKIES.get('user', '') # 读取浏览器cookie
    username = request.session.get('user', '') # 要记得创建django_session表来存放用户sessionid对应信息的地方,通用命令生成即可
    return render(request, "plan_manage.html", {"user": username, "requirements": requirement_list})


导入Model中都Requirement类,通过Requirement.objects.all()查询所有需求内容对象(数据),并通过render()方法附加在plan_manage.html页面返回给客户端。

作者已把相关代码放到git上:https://github.com/defnngj/guest
编辑以下页面

plan_manage.html

<!--<!DOCTYPE html>-->
<!--<html lang="en">-->
<!--<head>-->
<!--    <meta charset="UTF-8">-->
<!--    <title>计划管理系统</title>-->
<!--</head>-->
<!--<body>-->
<!--    <div style= "float:right;">-->
<!--        <a> 你好,{{user}}欢迎</a><hr/>-->
<!--    </div>-->
<!--    <h1>登录成功</h1>-->
<!--</body>-->
<!--</html>-->

<html lang="zh-CN">
 <head>
     <meta charset="utf-8">
     {% load bootstrap3 %}
     {% bootstrap_css %}
     {% bootstrap_javascript %}
     <title> 计划管理系统</title>
 </head>

 <body role="document">
    <!-- 导航栏 -->
    <nav class="navbar navbar-inverse navbar-fixed-top">
      <div class="container">
        <div class="navbar-header">
          <a class="navbar-brand" href="/plan_manage/">计划管理系统</a>
        </div>
        <div id="navbar" class="collapse navbar-collapse">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#">需求列表</a></li>
            <li><a href="/guest_manage/">人员</a></li>
          </ul>
          <ul class="nav navbar-nav navbar-right">
           <li><a href="#">{{user}}</a></li>
           <li><a href="/logout/">退出</a></li>
         </ul>
        </div><!--/.nav-collapse -->
      </div>
    </nav>


      <!--需求列表表单-->
      <div class="row" style="padding-top: 80px;">
          <div class="col-md-6">
              <table class="table table-striped">
                  <thead>
                  <tr>
                      <th>id</th><th>需求</th><th>优先级</th><th>预期上线时间</th><th>测试负责人</th><th>上线状态</th>
                      <th>上线时间</th><th>开发负责人</th><th>需求人员</th><th>备注</th>
                  </tr>
                  </thead>
                  <tbody>
                   {% for requirement in requirements %}
                  <tr>
                      <td>{{requirement.id}}</td>
                      <td>{{requirement.content}}</td>
                      <td>{{requirement.emergenyLevel}}</td>
                      <td>{{requirement.expentedTime}}</td>
                      <td>{{requirement.tester}}</td>
                      <td>{{requirement.onlineTime}}</td>
                      <td>{{requirement.onlineTime}}</td>
                      <td>{{requirement.tester}}</td>
                      <td>{{requirement.requirer}}</td>
                      <td>{{requirement.onlineTime}}</td>
                  </tr>
                  {% endfor %}
                  </tbody>
              </table>
          </div>
      </div>
 </body>
</html>

在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: Django是一个高级的Python Web框架,它鼓励快速开发和清洁,务实的设计。在Django的前端开发中,可以使用多种前端框架来加快开发速度和提高研发效率。一些常用的前端框架包括:jQuery、Bootstrap、Bootswatch、Pure、Materializecss和Bluma。这些框架都适配于不同的产品,可以根据项目需求选择合适的前端框架使用。\[1\]\[3\] #### 引用[.reference_title] - *1* [使用Python进行网站页面开发——Django框架介绍与安装](https://blog.csdn.net/weixin_63994459/article/details/125841782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【Django】简介](https://blog.csdn.net/huajiu520/article/details/125172348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Django项目中常使用前端框架](https://blog.csdn.net/qq_36581961/article/details/113344689)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值