欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

从零开始搭建Python web框架——Django(一)

程序员文章站 2022-03-24 23:11:04
...

Django是python下一个开源的、mvc模式的web应用框架,我们都知道,python版本不向下兼容,下表为Django版本与python版本的对应关系:

 

Django versionPython versions
1.8 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5
1.9, 1.10 2.7, 3.4, 3.5
1.11 2.7, 3.4, 3.5, 3.6
2.0 3.4, 3.5, 3.6
2.1 3.5, 3.6, 3.7

 

 下面我将介绍如何从零使用Django构建一个web应用。

步骤↓

  1. 安装python环境(此处不介绍),笔者安装的2.7版本。
  2. 下载Django源码,链接:https://www.djangoproject.com/download/ ,此处下载的1.11.10版本。解压->进入文件夹->执行python setup.py install安装。(安装成功后 Django 位于 Python 安装目录的 site-packages 目录下),若是linux环境,执行如下命令:
    tar xzvf Django-1.11.10.tar.gz
    cd Django-1.11.10
    python setup.py install
     
  3. 验证:
    C:\Users\du>python
    Python 2.7.10 (default, May 23 2015, 09:44:00) [MSC v.1500 64 bit (AMD64)] on wi
    n32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import django
    >>> django.get_version()
    '1.11.10'
    >>>
    
     以上说明安装成功。
  4. 将python安装目录的script目录加入环境变量,如:D:\Program Files\WinPython-64bit-2.7.10.3\python-2.7.10.amd64\Scripts
  5. 构建一个项目:进入想要存放项目的路径,执行如下命令:
    django-admin.py startproject HelloWorld
     可以看到在当前目录下,项目已经生成。
    #若是windows环境
    django-admin startproject HelloWorld
     
  6. 启动web服务:进入项目HelloWorld根目录,执行:
    python manage.py runserver
     显示信息:
    Starting development server at http://127.0.0.1:8000/
    Quit the server with CTRL-BREAK.
     服务启动成功,打开浏览器访问http://127.0.0.1:8000/,成功进入Django主页面。

 

到此一个Django项目就搭建完成了,目录结构如下:

|-- HelloWorld
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

 

  • HelloWorld: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • HelloWorld/settings.py: 该 Django 项目的设置/配置。
  • HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

以下命令可以启动服务:

python manage.py runserver 0.0.0.0:8000

 下面将介绍如何使用Django框架开发自己的web应用↓

  1.  HelloWorld 目录下的 HelloWorld 目录新建一个 view.py 文件,并输入代码:
    from django.http import HttpResponse
     
    def hello(request):
        return HttpResponse("Hello world ! ")
     
  2. 绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:
    from django.conf.urls import url
     
    from . import view
     
    urlpatterns = [
        url(r'^$', view.hello),
    ]
     现在目录结构如下:
    |-- HelloWorld
    |   |-- __init__.py
    |   |-- __init__.pyc
    |   |-- settings.py
    |   |-- settings.pyc
    |   |-- urls.py              # url 配置
    |   |-- urls.pyc
    |   |-- view.py              # 添加的视图文件
    |   |-- view.pyc             # 编译后的视图文件
    |   |-- wsgi.py
    |   `-- wsgi.pyc
    `-- manage.py
     
  3. 浏览器访问http://127.0.0.1:8000/,即可看到打印出的Hello world !
  4.  修改urls.py:
    from django.conf.urls import url
     
    from . import view
     
    urlpatterns = [
        url(r'^hello$', view.hello),
    ]
     此时浏览器打开 http://127.0.0.1:8000/hello,即可看到打印出的Hello world !
url() 函数
Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。
  • regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。
  • view: 用于执行与正则表达式匹配的 URL 请求。
  • kwargs: 视图使用的字典类型的参数。
  • name: 用来反向获取 URL。

本章先写到这!