Django 中提供了开发网站常常用到的模块,常见的代码都为你写好了,经过减小重复的代码,Django 使你可以专一于 web 应用上有 趣的关键性的东西。为了达到这个目标,Django 提供了通用Web开发模式的高度抽象,提供了频繁进行的编程做业的快速解决方法,以及为“如何解决问题”提供了清晰明了的约定。Django的理念是DRY(Don't Repeat Yourself)来鼓励快速开发!python
urls.py 网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数。 views.py 处理用户发出的请求,从urls.py中对应过来, 经过渲染templates中的网页能够将显示内容,好比登录后的用户名,用户请求的数据,输出到网页。 models.py 与数据库操做相关,存入或读取数据时用到这个,固然用不到数据库的时候 你能够不使用。 forms.py 表单,用户在浏览器上输入数据提交,对数据的验证工做以及输入框的生成等工做,固然你也能够不使用。 templates 文件夹 views.py 中的函数渲染templates中的Html模板,获得动态内容的网页,固然能够用缓存来提升速度。 admin.py 后台,能够用不多量的代码就拥有一个强大的后台。 settings.py Django 的设置,配置文件,好比 DEBUG 的开关,静态文件的位置等。
echo 'LANG="en_GB.utf8"' > /etc/sysconfig/i18n && cat /etc/sysconfig/i18n
参考
Centos防火墙&SELINUX关闭及yum源配置mysql
yum -y install openssl-devel readline-devel unzip gcc
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
tar -xvf Python-3.6.1.tgz cd Python-3.6.1 ./configure --prefix=/usr/local/python36 make && make install
$ ll /usr/local/python36/bin/ 总用量 24660 lrwxrwxrwx 1 root root 8 12月 12 15:36 2to3 -> 2to3-3.6 -rwxr-xr-x 1 root root 110 12月 12 15:36 2to3-3.6 -rwxr-xr-x 1 root root 251 12月 12 15:36 easy_install-3.6 lrwxrwxrwx 1 root root 7 12月 12 15:36 idle3 -> idle3.6 -rwxr-xr-x 1 root root 108 12月 12 15:36 idle3.6 -rwxr-xr-x 1 root root 223 12月 12 15:36 pip3 -rwxr-xr-x 1 root root 223 12月 12 15:36 pip3.6 lrwxrwxrwx 1 root root 8 12月 12 15:36 pydoc3 -> pydoc3.6 -rwxr-xr-x 1 root root 93 12月 12 15:36 pydoc3.6 lrwxrwxrwx 1 root root 9 12月 12 15:36 python3 -> python3.6 -rwxr-xr-x 2 root root 12603760 12月 12 15:35 python3.6 lrwxrwxrwx 1 root root 17 12月 12 15:36 python3.6-config -> python3.6m-config -rwxr-xr-x 2 root root 12603760 12月 12 15:35 python3.6m -rwxr-xr-x 1 root root 3106 12月 12 15:36 python3.6m-config lrwxrwxrwx 1 root root 16 12月 12 15:36 python3-config -> python3.6-config lrwxrwxrwx 1 root root 10 12月 12 15:36 pyvenv -> pyvenv-3.6 -rwxr-xr-x 1 root root 450 12月 12 15:36 pyvenv-3.6 -rwxr-xr-x 1 root root 230 12月 12 15:39 virtualenv
vim /etc/pip.conf [global] index-url = http://pypi.douban.com/simple/ trusted-host=pypi.douban.com [list] format=columns /usr/local/python36/bin/pip3 list Package Version ---------- ------- pip 9.0.1 setuptools 28.8.0
/usr/local/python36/bin/pip3 install virtualenv
Collecting virtualenv Downloading http://pypi.doubanio.com/packages/6f/86/3dc328ee7b1a6419ebfac7896d882fba83c48e3561d22ddddf38294d3e83/virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB) 100% |████████████████████████████████| 1.8MB 983kB/s Installing collected packages: virtualenv Successfully installed virtualenv-15.1.0
建立一个普通用户web
useradd devops passwd devops
切换到普通devopssql
su - devops /usr/local/python36/bin/virtualenv ./python36env Using base prefix '/usr/local/python36' New python executable in /home/devops/python36env/bin/python3.6 Also creating executable in /home/devops/python36env/bin/python Installing setuptools, pip, wheel...done.
进入虚拟环境数据库
source python36env/bin/activate (python36env) [devops@devops-python36 ~]$ pip list Package Version ---------- ------- pip 9.0.1 setuptools 38.2.4 wheel 0.30.0
Django 1.5.x 支持 Python 2.6.5 Python 2.7, Python 3.2 和 3.3. Django 1.6.x 支持 Python 2.6.X, 2.7.X, 3.2.X 和 3.3.X Django 1.7.x 支持 Python 2.7, 3.2, 3.3, 和 3.4 (注意:Python 2.6 不支持了) Django 1.8.x 支持 Python 2.7, 3.2, 3.3, 3.4 和 3.5. (长期支持版本 LTS) Django 1.9.x 支持 Python 2.7, 3.4 和 3.5. 不支持 3.3 了 Django 1.10.x 支持 Python 2.7, 3.4 和 3.5. Django 1.11.x 支持 Python 2.7, 3.4, 3.5 和 3.6(长期支持版本 LTS) 最后一个支持 Python 2.7 的版本 Django 2.0.x 支持 Python 3.4, 3.5 和 3.6 (注意,再也不支持 Python 2)
pip install "django>=1.11 (python36env) [devops@devops-python36 ~]$ pip install "django>=1.11,<=1.12" Collecting django<=1.12,>=1.11 Downloading http://pypi.doubanio.com/packages/7e/36/5266e0c51ee9b953d60ea8ea1fea10e268b1368f9c0ad08e2ff76ee9c1b5/Django-1.11.8-py2.py3-none-any.whl (6.9MB) 100% |████████████████████████████████| 7.0MB 1.9MB/s Collecting pytz (from django<=1.12,>=1.11) Downloading http://pypi.doubanio.com/packages/a3/7f/e7d1acbd433b929168a4fb4182a2ff3c33653717195a26c1de099ad1ef29/pytz-2017.3-py2.py3-none-any.whl (511kB) 100% |████████████████████████████████| 512kB 1.4MB/s Installing collected packages: pytz, django Successfully installed django-1.11.8 pytz-2017.3
数据库安装参考
Centos7.5安装mysql5.7.24二进制包方式部署django
(python36env) [devops@devops-python36 ~]$ pip install pymysql Collecting pymysql Downloading http://pypi.doubanio.com/packages/c6/42/c54c280d8418039bd2f61284f99cb6d9e0eae80383fc72ceb6eac67855fe/PyMySQL-0.7.11-py2.py3-none-any.whl (78kB) 100% |████████████████████████████████| 81kB 2.6MB/s Installing collected packages: pymysql Successfully installed pymysql-0.7.11 (python36env) [devops@devops-python36 ~]$ pip list Package Version ---------- ------- Django 1.11.8 pip 9.0.1 PyMySQL 0.7.11 pytz 2017.3 setuptools 38.2.4 wheel 0.30.0
yum -y install vim vim ~/.vimrc set tabstop=4 set shiftwidth=4 set softtabstop=4 set expandtab set fileformat=unix set nobomb set ff=unix set ambiwidth=double set fileencodings=utf-8,ucs-bom,cp936 syntax on filetype plugin on set nocompatible set completeopt=preview set ai set hls set nu