【Web开发一】Centos7.4 python3.6虚拟环境,部署Django框架,实现网站的访问
Django是一个非常不错的Web开发的框架,这里涉及到的是一个基础的使用。具体的配置是python3.6版本,Django是1.11.6版本。Pycharm是2017.3社区版本。这里要实现的是Django中部署网页,然后实现访问。
一、部署python3.6虚拟环境(避免版本冲突)
python3 -m venv /opt/mydj #部署python虚拟环境在/opt/mydj
二、**python虚拟环境
source /opt/mydj/bin/activate
三、下载Django模块,pymysql模块
pip install pymysql
pip install django==1.11.6
四、pycharm新建名为myweb的项目,并且设定解释器为python虚拟环境
五、切换到pycharm项目里,新建Django项目,名为mysite
cd PycharmProjects/myweb/
django-admin startproject mysite
六、切换到Django项目目录,启动Django
cd mysite/
python manage.py runserver 0:80 #使用python虚拟环境解释器启动manage.py脚本,启动服务,占用80端口
七、Django默认是使用db.sqlite3 这种文本数据库的,而我们实际情况中更多的是使用关系型数据库等,那么这里我们把Django使用的数据库给修改一下。在mysql里面新建这样的一个数据库,create database mydj default charset utf8;然后在修改Django的配置。
mysql> create database mydj default charset utf8;
查看pycharm,看看文件都有哪些
修改配置文件settings.py
ALLOWED_HOSTS = '*' #允许所有主机访问
# https://docs.djangoproject.com/en/1.11/ref/settings/#databases 数据可以修改模板的官方链接
DATABASES = { #更换Django的数据库
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mydj',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
LANGUAGE_CODE = 'zh-hans' #语言
TIME_ZONE = 'Asia/Shanghai' #时区
USE_TZ = False #关闭
修改配置后Django会自动重启程序,这里报错。从报错可知,缺少支持mysql的模块。
修改__init__.py文件
程序正常运行了。
八、删除db.splite3的这个文本数据库文件。
rm -rf db.splite3
九、新建Django应用。这里应用的理解是,一个应用,就是一套具体的网站。
python manage.py startapp polls
再次查看pycharm里面的项目文件
十、Django的工作流程是这样的。客户端访问网站,由URLS路由进行匹配,看看是发送给哪个视图函数进行处理,然后视图函数连接模型(数据库)进行数据的处理,再把处理的结果,发送给模板(HTML)反馈给客户端。按照这个思路。我们首先应该是修改URLS路由,再修改视图函数,再修改模型,再修改模板。但本文是仅仅部署Django环境而已。所以我们简化一下。
1、修改项目urls.py文件,授权应用urls路由进行路由功能
这里新增的这条的解读:当匹配polls开头的访问,都交给polls下面的urls来处理。
2、新增polls下的urls.py路由文件
这里新增的代码的解读:当匹配为空(以polls开头的,为空,就代表是polls或者是polls/),启动index这个视图函数,函数名就是index
3、新增视图函数index,view.py
这里代表是新增一个名为index的视图函数,导入HttpResponse模块,直接反馈字符串给客户端。
Django正常运行了。到此Django的环境,部署完毕。