位置: IT常识 - 正文

Django--基于Python的Web应用框架(django pycharm)

编辑:rootadmin
Django--基于Python的Web应用框架 基本介绍

推荐整理分享Django--基于Python的Web应用框架(django pycharm),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:django pymongo,django pytorch,django基于python的学生信息管理系统,django基于python的医院信息管理系统源代码,django pyc,django基于python的学生信息管理系统,django pycharm,python基于django的项目,内容如对您有帮助,希望把文章链接给更多的朋友!

Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。

使用 Django,只要很少的代码,Python 的程序开发人员就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的 Web 服务 Django 本身基于 MVC 模型,即 Model(模型)+ View(视图)+ Controller(控制器)设计模式,MVC 模式使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。

MVC 优势:

低耦合开发快捷部署方便可重用性高维护成本低...

Python 加 Django 是快速开发、设计、部署网站的最佳组合。

特点强大的数据库功能自带强大的后台功能优雅的网址MVC 与 MTV模型MVC 模型

MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

MVC 以一种插件式的、松耦合的方式连接在一起。

模型(M)- 编写程序应有的功能,负责业务对象与数据库的映射(ORM)。视图(V)- 图形界面,负责与用户的交互(页面)。控制器(C)- 负责转发请求,对请求进行处理。

简易图:

用户操作流程图:

MTV 模型

Django 的 MTV 模式本质上和 MVC 是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django 的 MTV 分别是指:

M 表示模型(Model):编写程序应有的功能,负责业务对象与数据库的映射(ORM)。T 表示模板 (Template):负责如何把页面(html)展示给用户。V 表示视图(View):负责业务逻辑,并在适当时候调用 Model和 Template。

除了以上三层之外,还需要一个 URL 分发器,它的作用是将一个个 URL 的页面请求分发给不同的 View 处理,View 再调用相应的 Model 和 Template,MTV 的响应模式如下所示:

简易图:

用户操作流程图:

解析:

用户通过浏览器向我们的服务器发起一个请求(request),这个请求会去访问视图函数:

a.如果不涉及到数据调用,那么这个时候视图函数直接返回一个模板也就是一个网页给用户。b.如果涉及到数据调用,那么视图函数调用模型,模型去数据库查找数据,然后逐级返回。

视图函数把返回的数据填充到模板中空格,最后返回网页给用户。

Django框架优势

不管你是学Python的大神,还是零基础刚开始学习的小白,了解一些Python常用的框架绝对是有必要的。而现在比较流行的Python框架一般是Django、Flask、Scrapy、Cubes、Pulsar和Tornado。其中django框架是其中更为热门的框架,是一款全能型web框架,接下来就和大家分享一下python django框架有什么优势

谈到Python框架,我们第一个想到的应该就是Django。Django作为一个Python Web应用开发框架,可以说是一个被广泛使用的全能型框架。Django的目的是为了让开发者能够快速地开发一个网站,因此它提供了很多模块。另外,Django最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。它与其他框架最大的区别就是,鲜明独特的特性,支持orm,将数据库的操作封装成为Python,对于需要适用多种数据库的应用来说是个比较好的特性。

具体优点包含以下几个方面:

功能完善、要素齐全:自带大量常用工具和框架(比如分页,auth,权限管理), 适合快速开发企业级网站。

完善的文档:经过十多年的发展和完善,Django有广泛的实践案例和完善的在线文档。开发者遇到问题时可以搜索在线文档寻求解决方案。

Django--基于Python的Web应用框架(django pycharm)

强大的数据库访问组件:Django的Model层自带数据库ORM组件,使得开发者无须学习SQL语言即可对数据库进行操作。

Django先进的App设计理念: App是可插拔的,是不可多得的思想。不需要了,可以直接删除,对系统整体影响不大。

自带台管理系统admin:只需要通过简单的几行配置和代码就可以实现一个完整的后台数据管理控制平台。

Django debug信息详尽: 很容易找出代码错误所在。

如今,Django成为最常用的Web开发框架之一。开发人员因其“包括电池”的理念而广泛喜欢Django Web开发。这意味着作为Django开发人员,您无需安装单独的库即可添加功能。Django提供了许多功能,可以在任何类型的Web应用程序中添加标准功能。

Django框架和“包含电池”的理念

Django是一个基于MVT的开源Web应用程序开发框架,该框架使用Python编写。它可以实现清晰的编码并降低Web开发的复杂性。

使用Django进行Python网站开发变得更加容易,因为Python缺少内置的网站开发功能。Django提供了弥补这一差距的功能。

Django开发因其“包含电池”的理念而广受欢迎。它为Web开发提供了许多通用功能,使您不必为每个功能编写代码。

Django Web框架还提供高级功能,例如ORM,数据库迁移,用户身份验证,管理面板和表单。

Django程序员喜欢该框架,因为它具有简化数据库工作的功能。它加快了开发过程,并使开发人员能够构建可伸缩的应用程序。开发人员也使用它,因为它允许将Django项目拆分为多个应用程序。

尽管开发人员在全球范围内使用Django Web框架,但它有其优点和缺点。有些开发人员完全喜欢Django,而有些开发人员则对他们古老的框架(如Ruby on Rails)感到满意。

对于对应该选择哪种框架进行开发感到困惑的开发人员和企业,了解Django开发的优缺点至关重要。

Django Web开发的优点

许多开发人员更喜欢Django。由于其计算和统计功能,它在机器学习和AI领域占据了主导地位。下面列出了Django开发的一些主要优点。

含电池Django Web开发的第一个也是最重要的好处是它的电池内置功能。开发人员无需编写代码,而可以使用现成的软件包来添加功能。这为开发人员节省了大量时间,并且他们可以专注于添加高级功能。您可以使用世界级社区成员制作的软件包,因为Django Web框架是开源的。您可以使用auth软件包实现身份验证,使用admin软件包实现admin接口,使用Sessions软件包实现会话管理等。由于所有功能都包含在框架中,因此开发人员只需导入这些软件包并立即开始构建应用程序即可。灵活的框架与Ruby on Rails不同,Django在配置机制上没有遵循约定。由于它是用Python(一种通用的编程语言)编写的,因此用于Web开发的Django为开发人员提供了更多的灵活性和动态性。他们可以根据需要配置移动框架并构建Web应用程序。用Django编写的Web开发使用Python编写,为外部库和包提供了出色的支持。您可以轻松地在Django中导入软件包,而无需担心任何安全问题。在Django中,更多的重点放在显式编程而不是隐式编程上,这使其成为需要快速更改的应用程序的理想框架之一。发展更快Django开发最重要的优点之一是它可以加快开发速度。初创企业和企业可以利用它来开发快速的MVP,并有更多的时间将产品推向市场。Django有基准来检查内部开发速度。通过正确的配置,Django Web开发可以为Web应用程序提供优化。尽管由于Python的配置,使用Django进行Python网络开发可能会有些慢,但Django可以弥补这一点。该框架的配置和体系结构设计允许一次使用多个组件,从而实现快速开发。开发人员可以并行工作,而不会损失开发速度。API的REST框架API对于将高级功能添加到Web应用程序是必不可少的。Django REST框架是一个Python库,可为该应用程序构建API。该框架具有模块化和可配置的体系结构,使API开发更加容易。Django程序员喜欢Django的REST框架,因为它为他们提供了强大的API功能。REST框架具有用于测试API端点的内置API浏览器。Django Web框架提供了身份验证和权限规则,以灵活地使用该框架。该库提供了其他框架(如流行的Python开发框架FLASK)不支持的自定义。机器学习能力使用机器学习算法的开发人员更喜欢Django应用程序开发。FLASK可用于部署机器学习模型,但这是一个轻量级的框架。Django更先进,并且与PyTorch,NumPy等强大的机器学习库兼容。Django的计算和统计功能使其成为机器学习应用程序的理想平台。企业正在利用Django的功能在其应用程序中进行Web开发。Django提供回归和预测功能,支持智能应用程序开发。Django Web开发的缺点

尽管Django Web框架功能强大且以其开发功能而闻名,但它仍然不是许多程序员的主要框架。Django有一些缺点,并且旧版开发人员很难过渡。下面列出了Django开发的一些弊端。

没有约定由于缺乏约定,大多数程序员不喜欢Django Web开发。与Ruby on Rails不同,该框架没有开发人员可以进行Web开发的一组原则。对于使用Convention over Configuration开发框架的开发人员来说,这变得有些困难。通常,在旅途中进行配置会导致组件不匹配,并且许多开发人员对此都不满意。早期的Django开发人员遇到了这个问题。由于必须将所有定义都定义为开发进度,因此有时开发速度可能比预期的要慢得多。不适用于较小的项目Django Web框架不适用于仅具有一些功能和要求的小型项目和产品。Django要求进行大量编码,这在开发时会占用服务器处理时间和带宽。它通常用于需要扩展或将要大规模启动的项目。使用Django进行小型项目的Web开发非常困难,因为该框架会将其独特的功能混淆到开发人员中。小型开发人员不需要高端的开发框架。他们可以轻松地与Ruby on Rails一起构建应用程序。从这个意义上讲,只有可扩展项目才能使用Django。整体框架对于Django中包含的所有“电池”,该框架都是整体的。它的依赖项数量很少,因此很难使用。Django程序员将框架视为单个程序包,这不是一件好事。Django依赖程度越低,开发人员就必须编写更多的代码。Django不鼓励开发人员学习Python软件包和工具。相反,Django开发专注于为程序员提供越来越多的面向代码的编程。在Django中,使用库很容易,但是将其视为用于Web开发的单个软件包是许多开发人员所犯的错误。陡峭的学习曲线主要缺点之一是Django网络框架的学习曲线很陡。尽管它是一个清晰,简单的框架,但是它是用Python编写的,因此很难学习。Django具有许多开发人员不容易理解的功能和配置。开发人员从其他语言切换到使用Django进行Python开发时,常常会发现它很难学习。该框架由于Python而具有不同的语法,因此开发人员无法很快掌握其语法。他们必须学习很长时间才能成为专家。尽管该框架已经过时并且发展缓慢,但它仍然是最难掌握的框架之一。多请求问题Django与大多数框架不同,但是有时它也是一个缺点。与大多数Web开发框架不同,Django无法同时处理多个请求。它们是对单个流程的请求,每个请求的完成都需要时间。从这个意义上讲,Django无法提供快速的开发。市场上几乎所有框架都提供了管理多个请求的功能。Django不支持多个请求的原因是它鼓励Django开发人员探索单个流程并制定决策。您是否应该考虑将Django框架用于Web开发?

Django框架正日益成为开发人员和企业中的流行选择。它是用于构建大型企业应用程序的强大框架。但是,对于小型应用程序和单页网站,Django可能不是正确的选择。

实战:创建项目和应用 

根据命令行的命令进入到相关的文件夹中

 然后我们创建项目:DjangoPro

django-admin startproject DjangoPro

然后我们在这个文件夹中就创建了这个项目:里面出现了一个名字叫DjangoPro的文件夹 这个文件夹里面有同名文件夹:DjangoPro和manage.py文件 同名文件夹内的文件: __init__.py(空文件,为了识别python标准包) setting.py(配置文件) url.py(URL

本文链接地址:https://www.jiuchutong.com/zhishi/297616.html 转载请保留说明!

上一篇:Pytorch深度学习实战3-6:详解网络骨架模块nn.Module(附实例)

下一篇:本地如何搭建一个Stable Diffusion 的AI绘画工具?(搭建本地yum)

  • iqooz5x怎么关闭5g

    iqooz5x怎么关闭5g

  • 小米10是刘海屏吗(小米10刘海屏设置)

    小米10是刘海屏吗(小米10刘海屏设置)

  • 电脑电源键坏了怎么重启(电脑电源键坏了怎么重启手机)

    电脑电源键坏了怎么重启(电脑电源键坏了怎么重启手机)

  • 拼多多店铺有几种类型(拼多多店铺有几次二级限制)

    拼多多店铺有几种类型(拼多多店铺有几次二级限制)

  • 蓝牙音箱可以边充电边用吗(蓝牙音箱可以边充电边听吗)

    蓝牙音箱可以边充电边用吗(蓝牙音箱可以边充电边听吗)

  • 荣耀10屏幕一会亮一会暗(荣耀屏幕一会亮一会暗)

    荣耀10屏幕一会亮一会暗(荣耀屏幕一会亮一会暗)

  • 华为手机性能模式开与不开什么区别(华为手机性能模式快捷键怎么设置)

    华为手机性能模式开与不开什么区别(华为手机性能模式快捷键怎么设置)

  • iphone11哪个卡槽是主卡(苹果11卡槽有区别吗)

    iphone11哪个卡槽是主卡(苹果11卡槽有区别吗)

  • 被搜的微信号状态异常是什么情况(被搜的微信号状态怎么改)

    被搜的微信号状态异常是什么情况(被搜的微信号状态怎么改)

  • 微博绑定手机号上限(微博绑定手机号注销了怎么登录)

    微博绑定手机号上限(微博绑定手机号注销了怎么登录)

  • cd-rom驱动器是什么设备(cdrom驱动器是什么意思)

    cd-rom驱动器是什么设备(cdrom驱动器是什么意思)

  • 交换机种类和用途是什么(交换机有几种?)

    交换机种类和用途是什么(交换机有几种?)

  • 华为nova2s和华为nova2区别(华为nova2s和华为nova2plus区别)

    华为nova2s和华为nova2区别(华为nova2s和华为nova2plus区别)

  • 打开开始菜单的组合键(界面返回键在哪里)

    打开开始菜单的组合键(界面返回键在哪里)

  • 锐龙r73750h相当于i几(锐龙r7 3750h性能)

    锐龙r73750h相当于i几(锐龙r7 3750h性能)

  • ps中动图怎么储存(ps如何储存动图)

    ps中动图怎么储存(ps如何储存动图)

  • 唯品会账号因安全问题被冻结怎么办(唯品会该账号因安全风险被冻结怎么办)

    唯品会账号因安全问题被冻结怎么办(唯品会该账号因安全风险被冻结怎么办)

  • 淘宝已设置提醒如何取消(淘宝已设置提醒在哪里)

    淘宝已设置提醒如何取消(淘宝已设置提醒在哪里)

  • 什么叫扩列交友(扩列和交友是一个意思吗)

    什么叫扩列交友(扩列和交友是一个意思吗)

  • 华为mate30pro如何调音量(华为mate30pro如何设置高清通话)

    华为mate30pro如何调音量(华为mate30pro如何设置高清通话)

  • 物联卡不用了怎么注销(物联卡不用了怎么处理掉)

    物联卡不用了怎么注销(物联卡不用了怎么处理掉)

  • 八戒网个人怎么接任务(八戒网怎么兼职)

    八戒网个人怎么接任务(八戒网怎么兼职)

  • 红米note8pro发布时间(红米note8pro发行)

    红米note8pro发布时间(红米note8pro发行)

  • macoshighsierra是什么(macossierra是什么意思)

    macoshighsierra是什么(macossierra是什么意思)

  • 超级看怎么用不了(超级看下架原因)

    超级看怎么用不了(超级看下架原因)

  • linux中gedit文本编辑器怎么设置自动保存文件内容?(linux中gedit命令)

    linux中gedit文本编辑器怎么设置自动保存文件内容?(linux中gedit命令)

  • 公司车保险费用高么
  • 其他个人出租房屋按照多少征收应纳税额
  • 一般纳税人劳务票一般开几个点
  • 租赁类发票可以不写单价数量
  • 个人所得税专项扣除子女教育标准
  • 普票也要盖发票专用章吗
  • 个人专项扣除需要扣税吗
  • 开票报税是什么意思
  • 固定资产与累计折旧有对应关系吗
  • 建筑工人的工资应该怎样支付
  • 企业之间借款利息进项税可以抵扣吗
  • 转让不动产增值税预缴
  • 不同的银行存款会收手续费吗
  • 境内所得境外发放工资
  • 发票代表收据吗
  • 补偿金超过平均工资三倍
  • 文化用品利润怎么样
  • 纳税调整额怎么算出来的
  • 定额发票2019年规定
  • 收到员工偿还的借款8000元,所生成的凭证会计分录
  • 原料采购入库检测损耗的会计处理怎么做?
  • ppt另存为在哪儿
  • 收到其他公司退款
  • 跨越红字专用发票开票流程
  • 怎么安装win7系统后怎么安装驱动
  • 材料费可抵扣进项税计算
  • wordpress使用
  • SwinIR实战:详细记录SwinIR的训练过程
  • opencv调用yolov8
  • 自学前端好学吗
  • 代付代缴社保会计分录
  • 住宿专票可以抵增值税吗
  • 上期累计应纳税所得额
  • 员工买机票公司会知道吗
  • 浏览器任意链接在哪里
  • 帝国cms灵动标签 PHP变量文章ID加减1
  • 帝国cms如何使用
  • mysqldump导入数据库
  • 帐载金额
  • 固定资产与固定资产净值的区别
  • 汇算清缴后发现成本多做了
  • 个人取得劳务报酬个人所得税
  • 企业筹建期间的费用处理
  • 差额增值税发票和全额增值税发票
  • 申报工资金额
  • 造价咨询费计入固定资产吗
  • 企业丢失专用发票税务机关如何处理
  • 外币收款怎么做账
  • 探望生病员工属于什么费用
  • 小规模纳税人所得税怎么计算
  • 原材料的采购成本怎么计算
  • 收到赞助费如何开发票
  • 跨年成本少结转如何调整
  • 赠送货物怎么做账
  • 母公司划拨土地给全资子公司需要上税吗?
  • 给员工家人报销会计分录
  • 给客户购物卡如何充钱
  • SQLServer EVENTDATA()函数来获取DDL 触发器信息
  • macbook系统快捷键
  • linux date-u
  • win10搜索功能不好用
  • shell命令windows
  • win7连接投屏器
  • 电脑安装win8
  • js分页逻辑
  • linux 常用命令大全及其详解
  • unity3d从入门到精通
  • json对象转化为list
  • pg搭建
  • shell脚本-lt
  • android圆形按钮
  • redis基础教程
  • jQuery Easyui DataGrid点击某个单元格即进入编辑状态焦点移开后保存数据
  • 源码讲解
  • python函数的方法
  • javascript面向对象编程指南
  • kmp算法理解
  • js短信验证码60s倒计时
  • 如何打印个人所得税证明
  • 北京住房公积金最高限额
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设