Django 介绍与安装

举报
宇宙之一粟 发表于 2022/10/27 14:10:35 2022/10/27
【摘要】 Django 介绍缘起随着 Python 语言的兴起,越来越多的程序员开始转向这门语言的学习。在我们学习完 Python 基础之后,就可以选择利用 Python 这门语言进行 Web 应用开发。而众多 Python Web 框架中,不得不提的就是现在已经发行到 2.x 版本的 Django。Django 是重量级选手中最有代表性的一位。许多成功的网站和 APP 都基于 Django:Inst...

Django 介绍与安装

Django 介绍

在这里插入图片描述

缘起

随着 Python 语言的兴起,越来越多的程序员开始转向这门语言的学习。在我们学习完 Python 基础之后,就可以选择利用 Python 这门语言进行 Web 应用开发。而众多 Python Web 框架中,不得不提的就是现在已经发行到 2.x 版本的 Django。Django 是重量级选手中最有代表性的一位。许多成功的网站和 APP 都基于 Django:Instagram,Mozilla,Bitbucket 等,为什么这些知名网站都会使用 Django 来开发呢?没错,因为,Django 能够以最快的速度和最小的代价构建和维护高质量的 Web 应用。

在讨论代码之前不得不提 Django 的发展历史,学习一项知识总要追根溯源(虽然以下历史有大量 copy 嫌疑,大家还是稍稍看看嘛),对 Django 知根知底使用起来比较放心嘛。

Django 的历史

Django 是从真实世界的应用中成长起来的,它是由美国堪萨斯(Kansas)州Lawrence 城中的一个网络开发团队的。它诞生于2003 年秋天,那时Lawrence Journal-World 报纸的程序员Adrian Holovaty和Simon Willison开始用 Python 来编写Web新闻程序。新闻界独有的特点是快速迭代,从开发到上线,通常只有几天或几个小时的时间。

Django 最初用来制作在线新闻 Web 站点,并于 2005 年加入了 BSD (Berkeley Software Distribution)许可证家族,成为开源网络框架。2008年Django有了DSF(Django Software Foundation),Django的发展就由这个基金会来主导。

Django 这一词语是根据比利时的爵士音乐家 Django Reinhardt 命名的,有希望 Django 能够优雅地演奏(开发)各种乐曲(Web 应用)的美好含义。

Django 的特点

要介绍 Django 的特点,跟 Django 的历史那就联系紧密了。这跟我们做人一样,你是什么样的人跟你从小到大的发展是息息相关滴。

1.做内容。Django 出生于新闻网站的环境,所以诸多特点非常适合内容聚合类的网站,比如新闻、博客、电商,这些网站能够提供动态、数据库驱动的信息,所以 Django 适合在动态内容管理系统。

2.开源文化。Django 不是一个科研项目或商业产品,来源于真实项目,Web 项目开发的问题也是 Django 开发者经常遇到的问题,所以开源就是让大家集思广益解决这些问题,节约时间,不用重复造轮子。

在这里插入图片描述 经过Django数10年的发展,官网介绍官网的特点如上图:“Django makes it easier to build better Web apps more quickly and with less code.”总的来说,Django已经具备以下特点:

  • 功能完善,容易上手,开发速度快,安全性强。
  • 完善的文档:Django 有众多的应用和完善的在线文档
  • 强大的数据访问组件:Django 的 Model 层自带数据库 ORM 组件,开发者无需学习其他数据库访问技术(DBI、SQLAlchemy 等)。
  • 强大的 URL 映射技术:Django 使用正则表达式管理 URL 映射,方便灵活。
  • 后台管理系统自动生成:自带完整的后台数据库管理 Web 控制台,用户可以基于此构建自己的后台管理模块。

介绍完这些特点,你是不是已经开始蠢蠢欲动了呢?下一章我们将带领大家动手安装 Django,然后你将看到一个成功的 Django 服务器启动。

安装 Django

因为 Django 程序是纯 Python 代码,所以用户在安装完 Python 环境后,可以利用 pip 工具使用如下命令安装 Django:

pip install django
复制代码

该命令将自动下载 Django 最新版本并进行安装。安装完成后可以进入 Python,通过进入 Python 环境验证 Django 是否安装成功:

# 验证Django是否安装成功
import django
print(django.VERSION)
复制代码

如下图,Django 的版本是 2.2.4 验证 django 是否安装成功 如果读者想安装其他版本的 Django,可以指定版本号: pip install django==1.11.7

如果使用 pip install 安装库比较慢,可以用豆瓣的镜像:

pip install django==1.11.7 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
复制代码

建立项目

在进行 Django 开发之前要先建立一个 Django 项目,命令如下:

# 建立项目——django-admin startproject 站点名称
django-admin startproject mysite
复制代码

该命令会在当前目录下建立一个子目录 mysite,这个子目录就是这个项目的名称,并在其中生成了 Django 开发的默认文件,mysite 的目录内容如下:

在这里插入图片描述

这几个默认生成的文件解释如下:

  • manage.py:是 Django 用于管理本项目的命令行工具,之后进行站点运行、数据库自动生成、静态文件收集等都要通过该文件完成。
  • 内层 mysite/ 目录中包含了本项目的实际文件,同时因为其中包含__init__.py 文件,所以该目录也是一个 Python 包。
  • mysite/init.py: 告诉 Python 该目录是一个 Python 包,其中暂无内容。
  • mysite/settings.py:Django 的项目配置文件。默认时,在其中定义了本项目引用的 Django 组件、Django 项目名等。在之后的开发中,还需在其中配置数据库参数、导入的其他 Python 包等信息。
  • mysite/urls.py:维护项目的 URL 路由映射,即定义客户端访问的 URL 由哪一个 Python 模块解释并提供反馈。在默认情况下,其中只定义了“/admin”即管理员站点的解释器。
  • mysite.wsgi.py:定义 WSGI 的接口信息,用于其他 Web 服务器集成,一般本文件在生成后无须改动。

建立应用

每个 Django 项目可以包含多个 Django 应用。进入刚刚创建的的项目目录下,然后建立应用的命令如下:

# python manage.py startapp 应用名称
cd mysite
python manage.py startapp app
复制代码

命令完成后会在项目目录中建立如下目录及文件结构:

在这里插入图片描述

对其中的文件功能解析如下。

  • migrations 包:用于在之后定义引用迁移功能。
  • init.py:其中暂无内容,该文件的存在使得 app 成为一个 Python 包
  • admin.py:管理站点模型的声明文件,默认为空。
  • apps.py:应用信息定义文件。在其中生成了类 AppConfig,该类用于定义应用名等 Meta 数据。
  • models.py:添加模型层数据类的文件。
  • tests.py:测试代码文件。
  • views.py:定义 URL 响应函数。

启动服务

在我们建立完 mysite 项目后,也就有了一个网站的基本框架,可以利用如下命令:

python manage.py runserver
复制代码

runserver 是启动网站的关键字,默认 IP 和端口号 http://127.0.0.1:8000/,启动 Web 服务器后即可通过浏览器访问这个 IP 地址即可看到测试页面,证明安装和启动正确,恭喜你。

在这里插入图片描述 可以使用 Control+C 来关闭服务器。

至此,我们已经看到了第一个网页,虽然很简陋,但我们可以慢慢学习 Django 然后不断完善它。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。