使用Django搭建web服务器的例子(最最正确的方式)


Posted in Python onAugust 29, 2019

今晚在Mac OS中搭建web服务器时遇到一点冲突,逛了几个论坛和网站,都说的太片面。

先列出最正确的搭建步骤:(无论你是任何操作系统,或者任何版本,都没毛病)

① 随便找个位置建一个文件夹(比如:Windows下的D盘)

② 打开终端(Windows下是cmd) cd 进入文件夹位置(简单吧)

③ 创建一个虚拟环境(虚拟环境就是磁盘一个位置,为了后续部署到服务器,这也是必须的并且是最正确的一步)

④ 激活虚拟环境

⑤ 安装Django

⑥ 在Django 中创建一个项目

⑦ 创建数据库

⑧ 使用 runserver 命令启动服务器

请提前安装好 python3.6、pip3 及 pycharm 专业版。

----------------------------------------------------------

每一步都超简单,几分钟就完成了。。不要信那些乱七八糟的讲解。首先他们不是创建的虚拟环境,就是错的。

我看好多人都写踩了几天几夜的坑集成了SQLite,配置Django到path环境变量……一系列错误操作

----------------------------------------------------------

我在工作目录下新建了一个文件夹 qihao_blog

使用Django搭建web服务器的例子(最最正确的方式)

cd进入 qihao_blog 目录后创建一个虚拟环境

python3 -m venv ll_env

这一步创建了一个名为 ll_env 的虚拟环境(随便起了一个名字而已)

使用Django搭建web服务器的例子(最最正确的方式)

运行python3 -m venv ll_env 命令之后会在我们文件夹下创建一个文件夹 ll_env 这个文件夹就是虚拟环境

----------------------------------

这一步要讲一下,由于Mac系统自带Python2.7,Xcode目前最高仅支持2.7,

所以开发IOS的就不要卸载系统自带的Python2.7。直接安装Python 3.6就可以了。

需要注意的是直接运行Python命令调用的是2.7,调用Python3.6需要使用 Python3 命令

----------------------------------

Windows用户没有以上问题。。。。。

这一步仅仅建个文件夹输一条命令就完事了,PyCharm直接创建项目对pip版本有要求,不支持现在的新版pip,需要降级。

如果你使用的是较早的Python版本,或者系统没有正确设置,不能使用模块venv,需安装virtualenv包

(最好还是使用Python3)

接下来激活虚拟环境

source ll_env/bin/activate

注意 如果你使用的是Windows系统,请使用命令 ll_env\Scripts\activate(不包含source)来激活这个虚拟环境。

要停止使用虚拟环境,可执行命令:deactivate

使用Django搭建web服务器的例子(最最正确的方式)

环境处于活动状态时,环境名将包含在括号内。在这种情况下,可以在环境中安装包,并使用已安装的包。

在ll_env虚拟环境中安装的包仅在该环境处于 活动状态 时才可用。

安装Django

创建并激活虚拟环境后,就可安装Django了:

pip install Django

这只是把Django安装在刚才创建的虚拟环境文件夹里。

由于是在虚拟环境中工作,因此在所有的系统中,安装Django的命令都相同:

无需使用python -m pip install package_name 这样较长的命令。更不用配置path环境变量。因为不是系统环境。

别忘了,Django仅在虚拟环境处于活动状态时才可用。

使用Django搭建web服务器的例子(最最正确的方式)

很多人用一条命令验证Django的path环境变量配置的是否正确。

如果不放心你可以试试虚拟环境能不能调用

django-admin help

使用Django搭建web服务器的例子(最最正确的方式)

记住这个时候虚拟环境是激活状态…………(前面有个括号,里面是虚拟环境名字)

接下来在Django 中创建一个项目

这个时候建议使用我们常用的PyCharm,当然也可以继续使用dos命令窗口。

PyCharm中打开刚才新建的qihao_blog文件夹

使用Django搭建web服务器的例子(最最正确的方式)

很多人会疑惑,我为什么不从第一步开始就使用PyCharm直接创建一个Django项目呢???

当然PyCharm会自动创建虚拟环境,并下载好Django。。

但是pip高版本不支持。不值得改来改去的。

前面我也提到了版本的问题。直接dos命令行创建虚拟环境后,打开使用高版本就好了。。

在terminal中输入如下命令。创建一个my_blog项目。

django-admin.py startproject my_blog .

使用Django搭建web服务器的例子(最最正确的方式)

这个命令 末尾的句点 让新项目使用合适的目录结构,这样开发完成后可轻松地将应用程序部署到服务器。

注意 千万别忘了这个句点,否则部署应用程序时将遭遇一些配置问题。如果忘记了这个句点,就将创建的文件和文件夹删除(ll_env除外),再重新运行这个命令。

创建完成后的目录结构就如截图看到一样,多了一个my_blog文件夹。。

接下来创建数据库

python manage.py migrate

为什么是Python命令不是Python3命令???

因为你就在Python3的虚拟环境中做各种操作。时刻记住做各种操作都是在环境激活的状态下。。

运行命令后,工程目录下就会多了一个 db.sqlite3 文件

使用Django搭建web服务器的例子(最最正确的方式)

在使用SQLite的新项目中首次执行这个命令时,Django将新建一个数据库 db.sqlite3 首次执行命令migrate时,将让Django确保数据库与项目的当前状态匹配。

启动服务器

python manage.py runserver

现在打开浏览器,并输入URL:http://localhost:8000/ 或者 http://127.0.0.1:8000/

使用Django搭建web服务器的例子(最最正确的方式)

这个页面是Django创建的,若要关闭这个服务器,按Ctrl + C即可。

注意 如果出现错误消息“That port is already in use”(指定端口已被占用),

请执行命令python manage.py runserver 8001,让Diango使用另一个端口;

如果这个端口也不可用,请不断执行上述命令,并逐渐增大其中的端口号,直到找到可用的端口。

以上这篇使用Django搭建web服务器的例子(最最正确的方式)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
仅用500行Python代码实现一个英文解析器的教程
Apr 02 Python
Python的Flask框架的简介和安装方法
Nov 13 Python
深入理解Python中装饰器的用法
Jun 28 Python
使用pyecharts无法import Bar的解决方案
Apr 23 Python
Python模糊查询本地文件夹去除文件后缀的实例(7行代码)
Nov 09 Python
Python实现查找二叉搜索树第k大的节点功能示例
Jan 24 Python
Python面向对象程序设计类的多态用法详解
Apr 12 Python
Python列表原理与用法详解【创建、元素增加、删除、访问、计数、切片、遍历等】
Oct 30 Python
使用jupyter notebook将文件保存为Markdown,HTML等文件格式
Apr 14 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
May 20 Python
Python代码覆盖率统计工具coverage.py用法详解
Nov 25 Python
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
May 21 Python
Python处理session的方法整理
Aug 29 #Python
django自带调试服务器的使用详解
Aug 29 #Python
Python中的相关分析correlation analysis的实现
Aug 29 #Python
python中单下划线(_)和双下划线(__)的特殊用法
Aug 29 #Python
python 计算两个列表的相关系数的实现
Aug 29 #Python
python同步windows和linux文件
Aug 29 #Python
python中几种自动微分库解析
Aug 29 #Python
You might like
如何使用php绘制在图片上的正余弦曲线
2013/06/08 PHP
解析php常用image图像函数集
2013/06/24 PHP
54个提高PHP程序运行效率的方法
2015/07/19 PHP
php实现生成验证码实例分享
2016/04/10 PHP
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
2018/09/16 PHP
PHP XML Expat解析器知识点总结
2019/02/15 PHP
可输入的下拉框
2006/06/19 Javascript
JavaScript中的排序算法代码
2011/02/22 Javascript
js的一些常用方法小结
2011/06/29 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
基于jQuery实现select下拉选择可输入附源码下载
2016/02/03 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
AngularJS实现给动态生成的元素绑定事件的方法
2016/12/14 Javascript
javascript 闭包详解及简单实例应用
2016/12/31 Javascript
微信小程序 引用其他js文件实现代码
2017/02/22 Javascript
微信小程序自定义组件
2017/08/16 Javascript
javascript计算渐变颜色的实例
2017/09/22 Javascript
推荐15个最好用的JavaScript代码压缩工具
2019/02/13 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
vue-父子组件和ref实例详解
2019/11/10 Javascript
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
Python实现遍历windows所有窗口并输出窗口标题的方法
2015/03/13 Python
python开发之thread实现布朗运动的方法
2015/11/11 Python
python如何生成网页验证码
2018/07/28 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
2019/08/31 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
python 读取串口数据的示例
2020/11/09 Python
CSS3按钮鼠标悬浮实现光圈效果源码
2016/09/11 HTML / CSS
应届生新闻编辑求职信
2013/11/19 职场文书
机电专业个人求职信范文
2013/12/30 职场文书
房地产销售计划书
2014/01/10 职场文书
上课睡觉检讨书
2014/01/28 职场文书
网络技术专业求职信
2014/07/13 职场文书
个人收入证明范本
2015/06/12 职场文书
QT连接MYSQL数据库的详细步骤
2021/07/07 MySQL
用PYTHON去计算88键钢琴的琴键频率和音高
2022/04/10 Python