首页 > 其他分享 >Django开发入门

Django开发入门

时间:2022-10-30 18:00:10浏览次数:46  
标签:web wsgi bysms 入门 py server application 开发 Django

  • 安装
pip install django
  • 构建项目
django-admin startproject bysms

Django开发入门_配置文件

  • 说明
manage.py 是一个工具脚本,用作项目管理的。以后我们会使用它执行管理操作。

里面的 bysms/ 目录是python包。 里面包含项目的重要配置文件。这个目录名字不能随便改,因为manage.py 要用到它。

bysms/settings.py 是 Django 项目的配置文件. 包含了非常重要的配置项,以后我们可能需要修改里面的配置。

bysms/urls.py 里面存放了 一张表, 声明了前端发过来的各种http请求,分别由哪些函数处理. 这个我们后面会重点的讲。

bysms/wsgi.py -> python 组织制定了 web 服务网关接口(Web Server Gateway Interface) 规范
  • wsgi
遵循wsgi规范的 web后端系统, 我们可以理解为 由两个部分组成
wsgi web server 和 wsgi web application,它们通常是运行在一个python进程中的两个模块,或者说两个子系统。
wsgi web server 接受到前端的http请求后,会调用 wsgi web application 的接口( 比如函数或者类方法)方法,
由wsgi web application 具体处理该请求。然后再把处理结果返回给 wsgi web server, wsgi web server再返回给前端。

wsgi web server 负责 提供高效的http请求处理环境,可以使用多线程、多进程或者协程的机制。
http 请求发送到 wsgi web server , wsgi web server 分配 线程或者进程或者 轻量级线程(协程),然后在 这些 线程、进程、或者协程里面,去调用执行 wsgi web application 的入口代码。

wsgi web application 被调用后,负责 处理 业务逻辑。 业务逻辑的处理可能非常复杂, wsgi web application 需要精心的设计来正确处理。
django是 wsgi web application 的框架,它只有一个简单的单线程 wsgi web server。 供调试时使用。

产品正式上线运行的时候,通常我们需要高效的 wsgi web server 产品,比如 gunicorn,uwsgi,cherrypy等,结合Django ,组成一个高效的 后端服务。
所以这个 wsgi.py 就是 提供给wsgi web server调用 的接口文件,里面的变量application对应对象实现了 wsgi入口,供wsgi web server调用 。

Django开发入门_django_02

  • 启动项目
# 终端进入项目根路径
python manage.py runserver 0.0.0.0:80

Django开发入门_Django_03

  • 配置ip
# 打开cmd,输入如下命令,查看本地ip
>ipconfig
无线局域网适配器 WLAN:

连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::ad4b:e5ff:7899:8758%5
IPv4 地址 . . . . . . . . . . . . : 192.168.96.152
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.100.254

Django开发入门_python_04

Django开发入门_配置文件_05

  • 构建方式2
# 执行命令创建项目目录,并且进入到项目目录
mkdir bysms && cd bysms

# 然后执行命令 创建manage.py 和 项目配置目录 名为 config
django-admin startproject config .

Django开发入门_python_06



标签:web,wsgi,bysms,入门,py,server,application,开发,Django
From: https://blog.51cto.com/chniny/5807598

相关文章

  • Kotlin的语法糖太甜啦——开发MC插件遇到的坑
    最近在学习使用Kotlin开发PaperMC插件,遇到了一个大坑,不吐不快。PersistentDataType<T,Z>接口我们可以给物品或方块添加自定义的BNT标签,而这个接口定义的自定义标签的数......
  • Django(一) | 创建Django项目并启动
    聪明在于勤奋,天才在于积累——华罗庚查看Django版本MicrosoftWindows[版本10.0.19044.2130](c)MicrosoftCorporation。保留所有权利。D:\myPython>python-m......
  • 手记系列之一 ----- 关于微信公众号和小程序的开发流程
    前言本篇文章主要介绍的调用微信公众号和小程序之后的开发流程,主要以实现步骤为主。前提准备已经申请了微信公众号和小程序(由于官方文档写的很详细,这里就不在进行说明......
  • CMake系统学习1--安装与入门
    安装编译工具和依赖库sudoaptinstallg++gccmakeninja-buildunziplibssl-dev-y​​wget​​下载和编译​​cmake​​源码wgethttps://github.com/Kitware/CMake/r......
  • 性能测试的一些入门概念
    功能测试、自动化测试,性能测试区别功能测试在于找bug预期结果与实际结果进行比较自动化测试 模拟一个用户的操作来发现问题性能测试 不是模拟1个人,**模拟多个人同......
  • Java 从入门到放弃11 - 《Maven》
    说点题外话,没想到突然又重拾更新,在这期间学习了java的许多知识,还补充了sql语句,数据库相关的内容,由于时间关系,中间部分的内容都没有做相应笔记和博客,因为sql的语句还有中间......
  • flink开发环境执行sql及生产环境提交sql文件
    flink提供了sql-client.sh工具可直接操作sql,该工具一般在开发环境用于调试,在生产环境还是要打成jar文件。为了避免在java文件中写大量sql,我们可以将sql提取出来放到一......
  • Mac开发_隐藏与显示Dock 上的程序图标
    1、启动时就处理选中target->info,点击任意key值中有个中有个加号,新增Applicationisagent(UIElement)字段,设置值为YES(隐藏)、NO(显示).2、动态调整//应用......
  • 12.17个提升开发效率的“轮子”(3)
    8.IOUtilsIO流在我们日常工作中也用得比较多,尽管java已经给我们提供了丰富的API。但我们不得不每次读取文件,或者写入文件之后,写一些重复的的代码。手动在finally代码块......
  • OpenMP 入门
    OpenMP入门简介OpenMP一个非常易用的共享内存的并行编程框架,它提供了一些非常简单易用的API,让编程人员从复杂的并发编程当中释放出来,专注于具体功能的实现。openmp主......