《老鸟python 系列》视频上线了,全网稀缺资源,涵盖python人工智能教程,爬虫教程,web教程,数据分析教程以及界面库和服务器教程,以及各个方向的主流实用项目,手把手带你从零开始进阶高手之路!点击 链接 查看详情

开始一个项目

阅读:475521207    分享到

一但你安装好了 python 和 django,你就可以通过创建一个project,迈出开发django应用的第一步。

项目是 Django 实例的一系列设置的集合,它包括数据库配置(在学到第五章之前,暂无数据库相关操作)、Django 特定选项以及应用程序的特定设置。

创建第一个 django 项目

首先新建一个工作目录,例如 E:\djproject\ ,然后进入该目录。

在控制台下,转到你刚刚创建的目录(E:\djproject\)下,运行命令django-admin.exe startproject mysite。这样会在你的当前目录下创建一个项目(一个空目录):mysite

注意,我们假定你把 django 安装到了虚拟环境下,你则需要把虚拟环境下的 Scripts 路径加入到环境变量中,不然的话, 在 E:\djproject\ 路径下找不到 django-admin.exe,会导致创建 django 项目的命令失败。当然,如果你不想配置环境变量,你也可以直接带上 django-admin.exe 的绝对路径来创建一个新项目,比如:

E:\djproject>C:\Python3\Scripts\djangoenv\Scripts\django-admin.exe startproject mysite

上面的命令同样会在 E:\djproject\ 路径下创建一个 mysite 项目。注意: C:\Python3\Scripts\djangoenv\ 是我的虚拟环境的路径,你只需要改成自己的就可以。

如果你的 django 是从 linux 发行版中安装的,那么,django-admin.exe常会被 django-admin.py 替代。那么你创建 django 项目的命令将会改成: python django-admin.py startproject mysite

我们目前已经使用 startproject 命令在 E:\djproject\ 目录下创建了一个项目 mysite,该项目下有一个和项目名称同名的文件夹 mysite(该文件夹下有 4 个文件)和一个 manage.py 文件,我们使用 Pycharm(如果不会使用 Pycharm,可以参考:安装 Pycharm),打开 mysite 项目,在 Pycharm 中,我们可以看到目录结构如下图:

我们简单分下一下所有文件代表什么意思:

  • init.py :让 Python 把该目录当成一个开发包 (即一组模块)所需的文件。 这是一个空文件,一般你不需要修改它。

  • settings.py :该 Django 项目的设置或配置。查看并理解这个文件中可用的设置类型及其默认值。

  • urls.py:Django 项目的 URL 设置。可视其为你的 django 网站的目录。

  • wsgi.py:Django 项目生成环境下和 web 服务器(比如 nginx)对接的协议模块。只有部署到生产环境下时,我们才使用到它。

  • manage.py :一种命令行工具,允许你以多种方式与该 Django 项目进行交互。键入 python manage.py help,看一下它能做什么。 你应当不需要编辑这个文件;在这个目录下生成它纯是为了方便。

尽管这些的文件很小,但这些文件已经构成了一个可运行的Django应用。

运行开发服务器

为了安装后更多的体验,让我们运行一下 django 开发服务器看看我们的准系统。

django 开发服务是可用在开发期间的,一个内建的,轻量的 web 服务。我们提供这个服务器是为了让你快速开发站点,也就是说在准备发布产品之前,无需进行产品级 Web 服务器(比如 nginx)的配置工作。开发服务器监测你的代码并自动加载它,这样你会很容易修改代码而不用重启动服务。

如果你还没启动服务器的话,请切换到你的项目目录里 (cd mysite ),注意,我们的 django 是安装在虚拟环境中,别忘记先激活虚拟环境,然后运行下面的命令:

python manage.py runserver

执行以上命令后,你会看到输出一些信息,如下图:

这将会在端口 8000 启动一个本地服务器, 并且只能从你的这台电脑连接和访问。既然服务器已经运行起来了,现在用网页浏览器访问 http://127.0.0.1:8000/。你应该可以看到一个令人赏心悦目的 Django 欢迎页面。如下图:

在进一步学习之前,一个重要的,关于开发网络服务器的提示很值得一说。虽然 django 自带的这个 web 服务器对于开发很方便,但是,千万不要在正式的应用布署环境中使用它。在同一时间,该服务器只能可靠地处理一次单个请求,并且没有进行任何类型的安全审计。发布站点前,请参考项目部分:部署 Django 项目

当然,我们也可以更改服务器主机的地址或端口。

默认情况下,runserver 命令在 8000 端口启动开发服务器,且仅监听本地连接。要想要更改服务器端口的话,可将端口作为命令行参数传入:

python manage.py runserver 8080

通过指定一个 IP 地址,你可以告诉服务器–允许非本地连接访问。如果你想和其他开发人员共享同一开发站点的话,该功能特别有用。0.0.0.0 这个 IP 地址,告诉服务器去侦听任意的网络接口。

python manage.py runserver 0.0.0.0:8000

完成这些设置后,你本地网络中的其它计算机就可以在浏览器中访问你的 IP 地址了。比如:http://192.168.0.104:8000/。 (注意:你将需要校阅一下你的网络配置来决定你在本地网络中的 IP 地址) linux 用户可以在命令提示符中输入 ifconfig 来获取以上信息。使用 Windows 的用户,请尝试使用 ipconfig 命令。

如果你发现启动服务器后,然后在浏览器中通过本地局域网 IP 访问,出现了如下错误,如下图:

这是因为 django 新版本加入了安全机制,我们只需要在 settings.py 文件中找到代码 ALLOWED_HOSTS = [''],然后改为 ALLOWED_HOSTS = ['*'] 或者改为你本地的局域网 IP 即可。

重新启动 django 服务器,我们发现可爱的网页又出来了。如下图:

如果我们不想输入端口,可以使用命令把服务器的端口设置为 80(python python manage.py runserver 0.0.0.0:80 )。这样,我们在浏览器中我们直接输入服务器的 IP 地址即可访问我们的网站,因为浏览器发现你没有输入端口,就会自动给你添上 80 端口。如下图:

接下来做什么

好了,你已经安装好所需的一切,并且开发服务器也运行起来了,你已经准备好继续学习基础知识–视图这一章的内容了。


如果以上内容对您有帮助,请老板用微信扫一下赞赏码,赞赏后加微信号 birdpython 领取免费视频。


登录后评论