为了能更好的了解到整个网站的服务情况,需要了解前端,后端之间的联系,这时候就得需要用到Django框架,基于Django自身带的模板,它可以更好的接收用户发出请求,接下来讲解一下新建第一个Django项目的步骤:
1:环境准备:
一台虚拟机或者服务器
centos7
python3以上
2:安装django
[root@bobo ~]# python3 -m venv myvenv #使用这条命令会在root用户的目录下生出myvenv这个文件夹,若不能生出,则是python3是否正常安装
[root@bobo ~]# source myvenv/bin/activate #进入python环境下的虚拟环境
(myvenv) [root@bobo ~]# pip3 list
Package Version
---------- -------
pip 18.1
setuptools 40.6.2
(myvenv) [root@bobo ~]# pip install django==2.2.5 #进行安装Django,版本选择当下最新的
2.25
(myvenv) [root@bobo ~]# cd myvenv/
(myvenv) [root@bobo myvenv]# ls
bin include lib lib64 pyvenv.cfg
(myvenv) [root@bobo myvenv]# django-admin startproject mysite .#创建一个django项目,名字叫mysite
(myvenv) [root@bobo myvenv]# ls
bin include lib lib64 manage.py mysite pyvenv.cfg
(myvenv) [root@bobo myvenv]# python3 manage.py migrate #接下来进行初始化,类似于编译
raise ImproperlyConfigured('SQLite 3.8.3 or later is required (found %s).' % Database.sqlite_version)
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
#上门是报错信息,表示django需要的数据库和python3.7的版本自带的不匹配,需要升级SQLit,下面是升级步骤
(myvenv) [root@bobo myvenv]# cd ~
(myvenv) [root@bobo ~]# wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz
(myvenv) [root@bobo ~]# tar -zxvf sqlite-autoconf-3270200.tar.gz
(myvenv) [root@bobo ~]# cd sqlite-autoconf-3270200
(myvenv) [root@bobo sqlite-autoconf-3270200]# ls
(myvenv) [root@bobo sqlite-autoconf-3270200]# ./configure --prefix=/usr/local
(myvenv) [root@bobo sqlite-autoconf-3270200]# make && make install
(myvenv) [root@bobo sqlite-autoconf-3270200]# export LD_LIBRARY_PATH="/usr/local/lib"
(myvenv) [root@bobo sqlite-autoconf-3270200]# mv /usr/bin/sqlite3 /usr/bin/sqlite3_old
(myvenv) [root@bobo sqlite-autoconf-3270200]# ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
(myvenv) [root@bobo sqlite-autoconf-3270200]# sqlite3 --version #到这里就可以看到是否更新好了
3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7
3:接下来便是配置,并运行Django自带的一个项目App
(myvenv) [root@bobo sqlite-autoconf-3270200]# cd ..
(myvenv) [root@bobo ~]# cd myvenv/
(myvenv) [root@bobo myvenv]# cd mysite/
(myvenv) [root@bobo mysite]# ls
__init__.py __pycache__ settings.py urls.py wsgi.py
(myvenv) [root@bobo mysite]# vi settings.py #在这里需要三项内容1:TIME_ZONE = 'Europe/Berlin'改成 Asia/Shanghai2:在末尾添加STATIC_ROOT =
os.path.join(BASE_DIR, 'static')这是指定存放静态文件的,第三项,允许访问的主机,这里代表所有主机都可访问ALLOWED_HOSTS = ['*']
[root@bobo myvenv]# python manage.py migrate #重新进入初始化
[root@bobo myvenv]# python3 manage.py runserver 0.0.0.0:8000#运行,输入本地的IP加端口测试,就可以显示页面了,不过一般来说需要等几秒,多
刷新刷新吧,运行之后是一直启动的,关闭之后就收不到了。
(myvenv) [root@bobo myvenv]# python3 manage.py createsuperuser #这条命令可以创建管理Django后台服务的超级管理员,输入用户,邮箱,密码名
就好了