ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

django

2022-01-07 19:03:20  阅读:173  来源: 互联网

标签:Web manage python py django mysite1


web框架

Web框架(Web framework)或者叫做Web应用框架(Web application framework),是用于进行Web开发的一套软件架构。大多数的Web框架都封装了一些通用的功能,为Web的行为提供支持,开发人员只需要写入项目对应的逻辑代码即可。

python的三大主流web框架

django 
特点: 大而全,自带的功能非常非常多
缺点: 过于笨重

flask
特点: 小而精 自动的功能特别少,支持插件扩展,第三方模块很多,所有第三方模块加起来可以盖过django,也越来越像django。
缺点: 依赖第三方开发者

tornado
特点:异步非阻塞,支持高并发,牛逼到可以开发游戏服务
缺点:会的人少

web框架提供的通用功能主要包括:

A. socket部分 (数据发送、接收与传输相关);
B. 路由与视图函数的对应关系 (路由匹配)
C. 模板语法 (动态页面引入外部变量的语法)

django:
A 用的是wsgiref模块
B 用的自己的
C 用的自己的(没有jinjia2好用,但也很方便)

flask
A 用的是werkzeug(内部也是wsgiref模块)
B 用的自己的
C 用的jinjia2模块

tornado
A B C 都是自己写的

django安装与简单使用

注意事项:

# 如何让你的计算机能够正常启动django项目
1. 计算机的名称不能有中文
2. 一个pycharm窗口只开一个项目(不要打开多余的文件夹)
3. 项目里的文件也尽量不要出现中文
4. python解释器尽量使用 3.4-3.6之间的版本
  (如果你的项目报错 点击最后一个报错信息,去源码中把逗号删掉)

# django的版本问题
1.x  2.x  3.x(太新)
目前用的最多的还是1.x与2.x

安装与简单使用

命令行

  1. 安装django
# 如果超时报错,再次执行安装命令即可
pip install django==1.11.11

# 安装好后输入django-admin可看到命令介绍
  1. 创建一个名为mysite1 的django项目
django-admin startproject mysite1
  1. 进入项目目录,启动Django项目(默认127.0.0.1:8000)
cd mysite1
python manage.py runserver

#或指定ip端口
#python manage.py runserver 127.0.0.1:8888

浏览器访问 http://127.0.0.1:8000/,效果为
image

  1. 创建应用
#这里的应用也叫做app,可以理解为这个项目的各个大的功能模块,就类似于大学中的各个学院,一个学院就为一个应用。

python manage.py startapp app01
  1. templates配置
# 项目根目录下手动创建templates文件夹
# 配置文件 mysite1/mysite1/settings.py 中加入templates路径
'DIRS': [os.path.join(BASE_DIR, 'templates')],

image

  1. 应用注册

新建的应用app需要到配置文件 mysite1/mysite1/settings.py 中注册

image

pycharm

注: 社区版pycharm不支持django

  1. 安装django
    image

  2. 创建新项目
    点击file--> new project --> 选择django
    image

  3. 启动服务

命令行的方式启动python manage.py runserver

点击绿色小箭头。

  1. 创建应用

pycharm终端命令行输入 python manage.py startapp appname

  1. templates配置
    pycharm会自动创建templates目录与添加路径

  2. 应用注册与命令行的步骤一样

vscode

  1. 安装django

我没找到哪里能选择版本,就随便装了一个相近的版本
image

  1. 创建项目我直接使用命令行的方式,不知道vscode控制台还有没有其他方式

  2. 启动服务

需要先修改配置,把此段代码加到configurations中(别的教程能选择django,自动添加,我没有实现)
image

      {
         "name": "Python: Django",
         "type": "python",
         "request": "launch",
         "program": "${workspaceFolder}\\manage.py",
         "args": [
            "runserver",
            "--noreload"
         ],
         "django": true,
         "justMyCode": false,
      },

注意这里需要只打开项目根目录,上层不能有其他目录
image

选择调试模式django,点击绿色箭头即可启动服务
image

后续其他操作都与命令行一样。

项目文件介绍

image

mysite1/
├── manage.py            # 管理文件,django的入口文件
└── app01                # 应用app01文件夹
|   ├── migrations       # 文件夹,数据库迁移记录
|   |   └── __init__.py
|   ├── __init__.py
|   ├── admin.py         # django 后台管理相关
|   ├── apps.py          # 注册使用
|   ├── models.py        # 数据库相关的 模型类(orm)
|   ├── tests.py         # 测试文件
|   └── views.py         # 视图函数(视图层)
|
└── mysite1              # 项目目录
|   ├── __init__.py
|   ├── settings.py      # 项目配置
|   ├── urls.py          # 路由,URL和函数的对应关系
|   └── wsgi.py          # wsgiref模块相关,runserver命令就使用此模块做简单的web server
|
└──  templates           # 存放html页面的文件夹

django小白必会三板斧

HttpResponse    # 返回字符串类型的数据

render          # 返回html文件

redirect        # 重定向
    return redirect('https://www.baidu.com') #重定向到某个网页
	return redirect('/home/')                #重定向到本地的一个页面

简单使用:

#创建3个路由:
    /index      返回字符串"Hi,it's django~~~"
    /hello      返回页面 hello.html
    /oldindex   跳转到本地/index
	/baidu      跳转到https://www.baidu.com

image

image

image

重启django服务后,访问效果为:
image

标签:Web,manage,python,py,django,mysite1
来源: https://www.cnblogs.com/huandada/p/15774923.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有