`

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

阅读更多

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。

本章先写到这!

1
0
分享到:
评论

相关推荐

    Python库 | Django-Pizza-13.11.11.tar.gz

    本资源“Django-Pizza-13.11.11.tar.gz”就是一个针对Python后端开发的特殊库——Django-Pizza的特定版本。Django-Pizza是基于Django框架构建的一个应用,它提供了许多用于构建Web应用的实用功能和组件,旨在简化...

    Django 1.2 E-commerce

    无论是想要从零开始学习Django还是希望深入掌握其在电子商务领域应用的开发者,都能从中获益匪浅。 #### 五、结语 《Django 1.2 电子商务》不仅是一本介绍Django在电子商务领域应用的书籍,更是一部指导开发者如何...

    The_Django_Book_2.0_中文版.pdf

    Django是一个开源的Web框架,由Python编写,采用了MTV(模型 Model、模板 Template、视图 View)的框架模式,让Web开发变得更加快捷高效。Django的官方文档《The Django Book 2.0 中文版》详细地介绍了如何使用...

    基于树莓派、Django及Bootstrap的智能家居监控系统设计源码

    它内置了大量便捷的功能,如对象关系映射(ORM)、用户认证、内容管理等,使得开发者可以不必从零开始搭建系统框架,而是专注于功能的实现。在本项目中,Django框架主要负责处理后端逻辑,如用户认证、数据处理、API...

    django-chinese-docs pdf

    - **从零开始**:适合完全没有经验的新手,详细介绍如何一步步构建一个Django应用。 - **概览**:对Django的整体架构进行概览性描述,帮助用户理解Django的核心设计理念。 #### 二、安装与教程 - **安装**:详细...

    BlogApp-Django:从头开始创建Django BlogApp。覆盖字体端HTML,CSS,Javascript和后端python django的全栈功能。任何人都可以创建帐户并发布

    本文将深入探讨如何使用Python的Django框架从零开始构建一个全栈博客应用——"BlogApp-Django"。该应用涵盖了前端的HTML、CSS和JavaScript技术,以及后端的Django核心功能,使得用户能够注册账户并发布文章。这将是...

    可用来做计算机实训大作业,参加一些比赛等等哦

    - **用户数据集**:系统内含预设的用户数据集,简化了用户信息管理,避免了从零开始构建数据库的复杂性。 2. **图书管理**: - **图书信息管理**:系统维护了一个图书数据集,包含每本书的书名、作者、出版社、...

    django-site

    【django-site】是一个基于Python开发的Web应用框架——Django中的一个项目模板,它为创建一个新的Django站点提供了快速入门的基础。Django是强大的、高级的、可重用的Web框架,它遵循“DRY”(Don't Repeat ...

    mysite:Django的教程学习

    在这个"Mysite"教程中,我们将学习如何从零开始搭建一个完整的Django项目。 首先,让我们了解Django的基本概念。Django遵循MVT(Model-View-Template)架构模式,即模型(Model)负责数据管理,视图(View)处理...

Global site tag (gtag.js) - Google Analytics