位置: 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)

  • 华为nova5微信视频美颜如何开启(华为nova5微信视频聊天怎么设置美颜功能)

    华为nova5微信视频美颜如何开启(华为nova5微信视频聊天怎么设置美颜功能)

  • 小米为什么下架小米9(小米为什么下架了霸王锁体)

    小米为什么下架小米9(小米为什么下架了霸王锁体)

  • 探探解除配对再次配对(探探不小心解除配对)

    探探解除配对再次配对(探探不小心解除配对)

  • 微信是中国的还是外国的(微信是中国人的吗)

    微信是中国的还是外国的(微信是中国人的吗)

  • ov手机是什么牌子(ov手机是国产品牌吗)

    ov手机是什么牌子(ov手机是国产品牌吗)

  • 华硕路由器刷梅林有什么用(华硕路由器刷梅林固件有什么好处)

    华硕路由器刷梅林有什么用(华硕路由器刷梅林固件有什么好处)

  • 无线耳机如何充电(无线耳机,怎么充电)

    无线耳机如何充电(无线耳机,怎么充电)

  • 电脑可以连手机热点上网吗(电脑可以连手机热点但是连不上wifi)

    电脑可以连手机热点上网吗(电脑可以连手机热点但是连不上wifi)

  • 拼多多待支付怎么催付(拼多多待支付怎么取消)

    拼多多待支付怎么催付(拼多多待支付怎么取消)

  • 手机qq电话怎么转接到电脑上(手机qq电话怎么静音)

    手机qq电话怎么转接到电脑上(手机qq电话怎么静音)

  • 微信感叹号是拉黑还是删除(微信感叹号消息)

    微信感叹号是拉黑还是删除(微信感叹号消息)

  • 买家如何解除云黑名单(买家如何关闭交易)

    买家如何解除云黑名单(买家如何关闭交易)

  • 抖音点赞不显示为什么(抖音点赞不显示红心怎么回事)

    抖音点赞不显示为什么(抖音点赞不显示红心怎么回事)

  • i5 7300u 什么水平(i5-7300u)

    i5 7300u 什么水平(i5-7300u)

  • vivox20何时上市(vivo x20什么时候发布)

    vivox20何时上市(vivo x20什么时候发布)

  • 苹果x充电头是多少w(苹果x充电头原装是几安)

    苹果x充电头是多少w(苹果x充电头原装是几安)

  • 优酷的视频格式是啥(优酷的视频格式怎么调)

    优酷的视频格式是啥(优酷的视频格式怎么调)

  • vivo手机电话簿怎么恢复(vivo手机电话簿怎么导入到卡里)

    vivo手机电话簿怎么恢复(vivo手机电话簿怎么导入到卡里)

  • 苹果可以加大内存吗(苹果加大内存有影响吗)

    苹果可以加大内存吗(苹果加大内存有影响吗)

  • hello语音打不开怎么办(hello语音软件怎么了)

    hello语音打不开怎么办(hello语音软件怎么了)

  • 华为nova5pro怎么关机(华为nova5pro怎么分屏)

    华为nova5pro怎么关机(华为nova5pro怎么分屏)

  • 华为荣耀20i返回键在哪里(荣耀20i返回键)

    华为荣耀20i返回键在哪里(荣耀20i返回键)

  • 惠普3636怎样清零(惠普3636打印机怎样清理墨盒)

    惠普3636怎样清零(惠普3636打印机怎样清理墨盒)

  • 电脑qq邮件怎么发文件(电脑QQ邮件怎么发pdf)

    电脑qq邮件怎么发文件(电脑QQ邮件怎么发pdf)

  • 鸿蒙怎么进行骚扰电话拦截? 鸿蒙手机设置拦截骚扰电话的方法(华为鸿蒙怎么搞)

    鸿蒙怎么进行骚扰电话拦截? 鸿蒙手机设置拦截骚扰电话的方法(华为鸿蒙怎么搞)

  • Huggingface之transformers零基础使用指南

    Huggingface之transformers零基础使用指南

  • 什么是印花税的税目
  • 应付账款周转率和存货周转率公式
  • 代加工可靠吗
  • 租车开发票属于什么类
  • 哪些行业不能开具增值税专用发票
  • 自然人税收管理系统换了电脑怎么恢复数据
  • 成品油认证步骤
  • 小规模纳税人季度超过45万怎么交税
  • 小规模纳税人无进项票怎么办
  • 税费误差财务怎么调整
  • 进出口代理公司哪家好
  • 上缴财政收入怎么做账
  • 公司亏损多久可以申请解散
  • 费用摊销怎么做
  • 发放股票股利的账务处理
  • 其他应交款入哪个科目
  • 固定资产转售
  • 收到外国客户的祝福怎么回复
  • 商标使用权入股可以退出吗
  • 固定资产安装完毕达到预定可使用状态
  • 事业单位存货盘盈
  • 跨年错误分录能红冲吗
  • 不预缴会怎么样
  • 公司筹建期间发生的费用没有发票
  • 代开专票怎么做账?
  • 税收筹划要注意哪些问题
  • 小微企业怎么合法避税
  • 支付宝手续费怎么关闭
  • 资金账簿印花税申报期限
  • 企业网银支持互联网专线
  • 长期借款的核算思维导图
  • 机动车抵扣联是什么
  • 代收代付快递货款需要发票吗,中间差额服务费怎么开票?
  • 企业对外股权投资涉及税收
  • linux系统基础教程
  • 对于接受捐赠的固定资产
  • 珠穆朗玛峰的壮观
  • 债权投资利息调整属于什么科目?
  • Thinkphp事务操作实例(推荐)
  • uniapp实战视频教程
  • ai绘画网站
  • 税控系统维护费普通发票可以全额抵扣吗
  • 进项税额认证后可以撤销吗
  • 其他权益工具投资是金融资产吗
  • 六税一费和六税两费的区别
  • 衡量税收负担通常用()
  • 捐赠支出汇算清缴需要调增吗
  • 其他应付款转实收资本股东会决议
  • mysql错误代码1067
  • 计提资产减值准备时,借记的科目是
  • 股东往来款算投资款吗
  • 企业收到投资款怎么入账
  • 委托加工后直接对外销售消费税
  • 钱汇错了报警有用吗
  • 税控盘全额抵扣怎么做分录
  • 买断式买入
  • 怎么从会计小白做到总账会计
  • xp电脑如何在网页打开
  • fedora iso
  • 在linux中,要解包bugzilla.tar.gz
  • linux系统监控软件
  • centos32
  • 怎么更换win系统
  • 电脑qq清理
  • 关于js的描述错误的是
  • 对js关键字命名的优点
  • 整理出来
  • python中生成随机小数的函数
  • vue基于什么
  • 深入解析抑郁症:什么是它的表现?别小看它的危害程度!
  • linux shell命令的返回值
  • js如何获取浏览器窗口大小
  • nodejs cli
  • jquery easyui开发指南
  • python app爬虫教程
  • python函数详解
  • 医院缴纳什么税
  • 税务官网怎么登录账号
  • 个人所得税税单下载
  • 合伙企业所得税账务处理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设