admin 管理员组文章数量: 1086019
2024年6月12日发(作者:文本打开出现乱码是怎么回事)
2019年第24期
信息与电脑
China Computer & Communication
软件开发与应用
基于Django的Python Web开发
白昌盛
(太原科技大学,山西 太原 030024)
摘 要:
近年来,Python语言广受欢迎,越来越多的软件开发者转到Python开发领域。Django是用Python开发的
开放源码的Web框架,遵循MVC设计理念,受到越来越多的关注。使用Django框架,可以在短时间内创建出高品质、易
维护和数据库驱动的Web应用程序。基于此,笔者分析了Django框架和Python Web的特点,并创建了一个简易的学生
管理系统。
关键词:
Django;Python Web;学生管理系统
中图分类
号:TP393.092 文献标识码:A 文章编号:1003-9767(2019)24-037-04
Python Web Development Based on Django
Bai Changsheng
Abstract:
In recent years, Python languages have become popular, and more and more software developers have turned to
(Taiyuan University of Science and Technology, Taiyuan Shanxi 030024, China)
Python development. Django is an open source web framework developed in Python that follows the MVC design philosophy and is
web applications in a short amount of time.
receiving more and more attention. This article analyzes the features of the Django framework and Python and creates a simple student
Key words:
Django; Python Web; student management system
1.1 简单
Python是一种代表简单思想的语言。一个良好的Python
程序像一篇英文文档,非常接近于人的自然语言。在开发
Python程序时,研发人员更专注于解决实际问题,而不必考
虑计算机语言的细节。
1.2 开源
Python是Floss(自由/开放源码软件)之一,用户可以
查看它的源代码,对它做改动或进行二次开发。用户不需要
为使用Python支付费用,也不涉及版权问题。
1.3 高级语言
当用户使用Python编写程序时,无需要再考虑如何管理
程序使用的内存一类的底层细节。
1.4 可移植性
Python的标准实现是由可移植的ANSIC编写的,可以
management system. Demonstrating the use of the Django framework to create high-quality, easy-to-maintain and database-driven
0 引言
随着网络技术、软件开发技术的迅速发展,Web框架得到
广泛应用。传统的Web框架,比如JAVA Web框架包括Struts、
Spring、Hibernate等,再比如 MVC框架,由于其复
杂性,开发者需要掌握多种框架技术,花费更多的时间在应
用框架的学习上以及框架之间的整合上,而用于业务逻辑分
析的时间就少了很多。使用Python语言开发的Django框架
可以作为快速Web开发的应用框架,引起越来越多的开发
者重视
[1]
。
1 Python简介
Python语言是由荷兰人Guido van Rossum创建的。
Python是一种面向对象的程序设计语言,它作为通用且功能
强大的编程语言广受好评。Python语言的语法简洁而清晰,
具有丰富和强大的类库,常被称为胶水语言。Python是解
释型语言,适用于多个平台,可以运行在Windows、MAC
和各种Linux/UNIX系统上。
[2]
作者简介:
白昌盛(1980—),男,山西吕梁人,硕士研究生,助教。研究方向:计算机技术。
— 37 —
软件开发与应用
信息与电脑
China Computer & Communication
2019年第24期
在目前所有的主流平台上编译和运行。尽管有一些针对不同
平台开发的特有模块,但是在任何一个平台上用Python开
发通用软件都可以稍作修改或者原封不动地在其他平台上运
行。这种可移植性既适用于不同的架构,也适用于不同的操
作系统。
1.5 解释执行
Python是一种解释性语言,使用这种语言编写的程序,
不需要编译成计算机就可执行二进制代码,同时可以直接从
源代码运行程序。Python程序是通过Python解释器解释并
执行,Python解释器首先把程序的源代码转换成称为字节
码的中间形式,然后再把它翻译成计算机语言并执行。这使
Python更简单,也使Python程序更易于移植。
1.6 可扩展性
Python的可扩展性使程序员能够灵活地附加程序,缩短
了开发周期,因为Python是基于C语言开发的,所以可以
用C/C++来编写Python的扩展性。
1.7 可嵌入性
Python的嵌入性是指它可以作为一种成熟的脚本语言,
并且以一种很方便的方式嵌入其他的程序中,比如嵌入C/
C++中。
1.8 丰富的类库
Python的标准库很大。基于庞大的标准库,可以编写程
序来处理各种工作,包括正则表达式、文档生成、单元测试、
线程的功能。除了标准库,它还有大量高质量的第三方库,
如NumPy、Twisted、Django等。
的接口。支持的数据库包括SQLite、MySQL和PostgreSQL等。
这种设计使数据库的切换只需要修改配置文件即可,使开发
者得数据库设计具有很好的灵活性。
(3)简洁的URL设计。Django框架中URL系统设计
非常强大且灵活,可以在Web应用中为URL设计匹配模式,
并用Python函数处理。这种设计使Web应用开发者可以创
建友好的URL,使之更适合于搜索引擎的搜索。
(4)自动化的管理界面。Django框架已经提供了一个
易用的管理界面,这个界面可以方便地管理用户数据,具有
高度的灵活性和可配置性。
(5)强大的开发环境。Django框架提供了强大的Web
开发环境,有一个可用于开发和测试的轻量级Web服务器。
启用调试模式后,Django会显示大量的调试信息,使开发者
很容易清除bug。
(6)使用MTV框架。Django框架遵循Web开发的
MVC(Model模型、View视图、Controller控制器)架构。
MTV框架也可以是一种MVC框架,而Django更关注的是
模型(Model)、模板(Template)和视图(View)。
(7)强大的可扩展性:Django允许使用第三方库来扩
展Web应用程序。
2.2 Django框架的工作原理
用户在浏览器输入URL后回车,浏览器会对URL进
行检查,首先判断使用的是什么协议。如果是HTTP协议,
就按照Web来处理,再调用DNS域名解析服务器解析,
将域名转换成IP地址,然后经过网络传输到对应Web服务
器。Web服务器接收到用户浏览器发来的Web请求后,会对
URL进行解析,然后调用View中的业务逻辑(MTV中的V)
以及Model(MTV中的M),与数据库进行交互,再将数据
发送到Templates(MTV中的T)进行渲染,最后发送到浏
览器,浏览器以合适的方式呈现给用户。
2.3 Django的模块及功能
(1):URL配置文件,主要是将URL映射到应
用程序中的相应函数。
(2):处理用户发来的请求,从中对
应过来,通过渲染templates中的网页可以将显示内容输出到
网页。
(3):与数据库操作相关,存入或读取数据
时使用。
(4):表单,用户在浏览器上输入数据提交,
包括对数据的验证以及输入框的生成等。
(5)templates文件夹:中的函数渲染templates
中的HTML模板,得到动态内容的网页,可以用缓存来提高
2 Django简介
Django是用Python开发的一套开放源代码的Web框架。
Django是一套组件,能够快速高效地开发Web应用。框架
的作用是把程序的整体架构搭建好,在其基础上开发者填写
业务逻辑。框架在需要使用逻辑功能时调用业务逻辑,而不
需要开发者自己去调用。使用Django框架,可以减少很多开
发中的繁琐的工作,让开发者将更多的精力专注于编写业务
逻辑,而不是重复生产基础组件的工作
[3]
。
2.1 Django的特点
(1)丰富的组件。Django框架有丰富的用于开发Web
应用的组件,这些组件都是用Python开发的,并为开源界所
修改和使用。设计Django框架的组件的目的是实现重用性,
并使之具有易于性。
(2)对象关系映射和多数据库支持。Django框架的数
据库组件——对象关系映射提供了数据模块和数据引擎之间
— 38 —
2019年第24期
信息与电脑
China Computer & Communication
软件开发与应用
速度。
(6):网站后台管理相关操作,可以用很少的
代码就拥有强大的后台管理系统。
(7):Django的配置文件,用于设置如静态
文件的位置等。
from import models
# Create your models here.
class Stu():
stu_no=eld(max_length=20)
name=eld(max_length=20)
sex=eld(max_length=2)
major=eld(max_length=50)
4.5 创建视图View
在student应用的文件中编写如下代码:
from uts import render
from import TemplateView
from import Student
from tor import Paginator ,
PageNotAnInteger,EmptyPage
class HomeView(TemplateView)
template_name = ‘’
4.6 创建模板
在student目录下创建templates文件夹,然后在该文件
夹下创建父模板:
在templates文件夹下创建子模板:
{%extends “”%}
{%block title%}Template Inheritance{%endblock%}
{%block content%}
# | 学号 | 姓名 | 性别 | 专业 |
---|---|---|---|---|
{{r}} | {{_no}} | {{}} | {{}} | {{}} |
信息与电脑
China Computer & Communication
2019年第24期
path(‘admin/’, ),
]
用很短的时间就可以快速搭建一个简单的学生管理系
统,基于Django的Python Web开发,能快速高效地进行
Web开发。
5 结 语
本文利用Django框架,结合SQLite3数据库设计了简
易的学生管理信息系统。使用Django框架,可以在短时间
内创建高品质、易维护和数据库驱动的Web应用程序,提
高了开发效率,降低了系统开发的复杂度,便于系统的更新
和维护。
参考文献
[1]龚新定,余艳梅,吴小强,等.基于Django的实验室信
息管理系统设计[J].微型机与应用,2016,35(22):108-111.
[2]杨志庆.基于Django的Blog系统的开发与实现[J].机
电一体化,2013(9):69-72.
[3]刘班.基于Django的快速开发Web应用[J].电脑知识
与技术,2009(7):1616-1618.
{%endblock%}
4.7 URL映射
from b import admin
from import path
urlpatterns = [
(上接第36页)
processStatus <= 3) }”>
index-1].processStatus == 4)&&(ime == null) }”>
4 结 语
工作流控制管理在开发相关的应用系统时需要“因地制
宜”,选用合适的方法,在短时间内为企业的经营过程提供
可行的技术框架和实施路线,为企业信息化管理提供可靠的
支持和服务。
通过设计与实践,验证了本文系统设计的可行性,在流
程固定的情况下,系统运行正常、稳定。在角色权限的基础上,
在单一页面的表单中有多行数据且每行数据均需按流程处理
的业务需求的情况下运行良好,减少了配置、使用流程引擎
带来的繁琐工作,简单易用,具有一定的推广价值,可以很
好地实现流程控制,满足简单流程、批量审批类型的业务管
理信息系统需求。
参考文献
[1]覃淼平.施工进度BIM可靠性预测手段研究[J].建设
科技,2016(10):99-100.
[2]王巍.云计算之虚拟化平台技术认知研究[J].通信管
理与技术,2014(1):17-18,23.
— 40 —
版权声明:本文标题:基于django的python web开发 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1718137149a717412.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论