欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

基于Django框架的python web

程序员文章站 2022-03-10 22:37:09
项目名称:基于Django的python web摘要Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。2019年12月2日,Django 3. 0发布。1. 引言本篇介绍了Django框架编写的python web...

项目名称:基于Django的python web

摘要

Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。2019年12月2日,Django 3. 0发布。

1. 引言

本篇介绍了Django框架编写的python web,Django是一个由Python写成的开源Web应用框架,可以用它以更快的速度、更少的代码,搭建一个高性能的网站,本项目借助了Django编写了一个简单的web页面。

2. 系统结构。

Django 介绍

基于Django框架的python web

Django 是一个开放源代码的 Web 应用框架,由 Python 写成。采用了 MTV 的框架模式,即模型 M,模板 T 和视图 V。当然,网上也有人说 Django 采用了 MVC 的软件设计模式,即模型 M,视图 V 和控制器 C。

它们各自的职责如下:

层次 职责
模型(Model),即数据存取层 处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。
模板(Template),即业务逻辑层 处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。
视图(View),即表现层 存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。

Django的组成结构

1.Django 是遵循MVC架构的Web开发框架,关于MVC框架的知识(大家可以自行了解,经常会被面试官提到),其主要由以下几个部分组成。

2.管理工具(Management):一套内置的创建站点、迁移数据、维护静态文件的命令工具。

3.模型(Models):提供数据访问接口和模块,包括数据字段、元数据、数据关系等的定义和操作。

4.视图(Views):Django的视图层封装了HTTP Request和Response的一系列操作和数据流,其主要功能包括URL映射机制、绑定模板等。

5.模板(Template):是一套Django自己的页面渲染模板语言,用若干内置的tags和filters定义页面的生成方式。

6.表单(Form):通过内置的数据类型和控件生成HTML表单。

7.管理站(Admin):通过声明需要管理的Model,快速生成后台数据管理网站。

Django 安装 安装最新版的 Django 版本

  #安装最新版本的 Django
  pip install  django
  #或者指定安装版本
  pip install -v django==2.0

查看 Django 是否已经成功安装:

  #查看 Django 版本
  python -m django --version

Python Django 版本对应表

Django version Python versions
1.8 2.7, 3.2, 3.3, 3.4, 3.5
1.9, 1.10 2.7, 3.4, 3.5
1.11 2.7, 3.4, 3.5, 3.6
2.0 3.5+

Django的框架图

基于Django框架的python web

对使用的相关技术,相关模块进行介绍:

程序使用了前后端分离,使用视图对url的映射,分发管理url,使用模板和表单快速生成后端页面.

3. 实现代码。

创建项目

使用命令行创建Django项目:

django-admin startproject mysite

让我们看看 startproject 创建了些什么:

mysite/
  manage.py
  mysite/
    __init__.py
    settings.py
    urls.py
    wsgi.py

编写第一个视图

from django.contrib import admin
 from django.urls import path
 
 from myapp import views
 urlpatterns = [
   path('admin/', admin.site.urls),
   path('', views.index)
 ]

from django.shortcuts import render

 # Create your views here.
 def index(request):
   return render(request, 'index.html')

编写第一个前端页面

<!DOCTYPE html>
<html lang="en">

<head>
 <meta charset="UTF-8">
 <title>Hello,Django!</title>

 <style type="text/css">
   html {
     width: 100%;
     height: 100%;
     overflow: hidden;
     font-style: sans-serif;
  }

   body {
     width: 100%;
     height: 100%;
     font-family: 'Open Sans', sans-serif;
     margin: 0;
     background-color: #FF8080;
  }

   #login {
     position: absolute;
     top: 50%;
     left: 50%;
     margin: -150px 0 0 -150px;
     width: 300px;
     height: 300px;
  }

   #login h1 {
     color: #fff;
     text-shadow: 0 0 10px;
     letter-spacing: 1px;
     text-align: center;
  }

   h1 {
     font-size: 2em;
     margin: 0.67em 0;
  }

   input {
     width: 278px;
     height: 18px;
     margin-bottom: 10px;
     outline: none;
     padding: 10px;
     font-size: 13px;
     color: #fff;
     text-shadow: 1px 1px 1px;
     border-top: 1px solid #312E3D;
     border-left: 1px solid #312E3D;
     border-right: 1px solid #312E3D;
     border-bottom: 1px solid #56536A;
     border-radius: 4px;
     background-color: #2D2D3F;
  }

   .but {
     width: 300px;
     min-height: 20px;
     display: block;
     background-color: #4a77d4;
     border: 1px solid #3762bc;
     color: #fff;
     padding: 9px 14px;
     font-size: 15px;
     line-height: normal;
     border-radius: 5px;
     margin: 0;
  }
 </style>
</head>

<body>
 <div id="login">
   <h1>Hello,My First Django!</h1>
 </div>
</body>

</html>

运行程序

python manage.py runserver

账户管理

python manage.py migrate

新增账户

python manage.py createsuperuser

4. 实验。

创建账户

基于Django框架的python web

命令行显示

基于Django框架的python web

首页的显示

基于Django框架的python web

登录界面的显示

基于Django框架的python web

登录失败界面

基于Django框架的python web

登录成功界面

基于Django框架的python web

本文地址:https://blog.csdn.net/qq_41194667/article/details/107224489