django 1.11.x
python 2.7 3.4 3.5 3.6 LTS
目前在用版本
同时安装上 python2.7.18、python3.11.0 ,将python3.11.0改为python3,运行如下命令得到对应的pip版本
python -m pip install --upgrade pip
python3 -m pip install --upgrade pip
https://files.pythonhosted.org/packages/37/1b/b25507861991beeade31473868463dad0e58b1978c209de27384ae541b0b/setuptools-40.6.3.zip
https://pypi.python.org/pypi/pip
python setup.py install
wget https://www.python.org/downloads/release/python-365
推荐直接安装方式安装 https://www.python.org/downloads/windows/
windows中 pip下载
https://pypi.python.org/pypi/pip#downloads
在 pip中文件夹中 使用 python setup.py install
报错:
ModuleNotFoundError: No module named 'setuptools'
缺少组件,setuptools http://pypi.python.org/pypi/setuptools。
报错:
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
需要安装 openssl-devel组件 ,yum install openssl-devel
- wget --no-check-certificate https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
解压: tar -xzvf Python-3.6.5.tgz
- ./configure --prefix=/usr/local/python365 --with-ssl
(这个文件夹python36需要自行创建,格式自定义,这里为了区分小的版本号执行configure文件,此文件有两个功能:1、让用户选定编译特性;2、检查编译环境。configure执行后将生成MakeFile文件。)
- make(编译程序)
- make install(编译安装)
5.安装完成,常见python36的链接
ln -s /usr/local/python36/bin/python3 /usr/bin/python3
6.下载pip (pip install --upgrade pip 更新自己)
最新pip版本
https://files.pythonhosted.org/packages/73/8e/7774190ac616c69194688ffce7c1b2a097749792fea42e390e7ddfdef8bc/pip-20.2.2.tar.gz
wget --no-check-certificate https://github.com/pypa/pip/archive/10.0.1.tar.gz
7.安装pip
python3 setup.py install
8.创建链接
ln -s /usr/local/python36/bin/pip /usr/bin/pip3
9.升级pip
python3 -m pip install --upgrade pip
pip install --upgrade pip
pip3 install pymysql
1.zipimport.ZipImportError: can’t decompress data; zlib not available 安装pip的时候报错.
缺少zlib 的相关工具包导致
yum -y install zlib*
5.修改PATH环境变量,以能够识别此程序的二进制文件路径;
修改/etc/profile文件,在文件中 添加
export PATH=$PATH:/path/to/somewhere#记得是可执行文件所在的目录,路径中不要包含可执行文件。
然后执行
source /etc/profile #是我们的修改生效
查看版本
python -V
pip -V
django 1.0版本中最后一个版本 Until at least April 2020
基于python3安装的pip3安装django
pip3 install Django==1.11.14
查看版本
import django
django.VERSION
django-admin.py startproject HelloWorld
最新版的 Django 请使用 django-admin 命令:
django-admin startproject HelloWorld
cd HelloWorld/
.
|-- HelloWorld
| |-- __init__.py
| |-- settings.py
| |-- urls.py
| `-- wsgi.py
`-- manage.py
目录说明:
接下来我们进入 HelloWorld 目录输入以下命令,启动服务器:
python3 manage.py runserver 0.0.0.0:8000
访问成功如下:
It worked!
Congratulations on your first Django-powered page.
Next, start your first app by running python manage.py startapp [app_label].
You're seeing this message because you have DEBUG = True in your Django settings file and you haven't configured any URLs. Get to work!
如果报错:
DisallowedHost at / Invalid HTTP_HOST header:
于是就去django-admin.py startproject project-name创建的项目中去修改 setting.py 文件:
ALLOWED_HOSTS = ['*'] #在这里请求的host添加了*
启动django后,不能访问,报400错误。
原因:没有开启允许访问
处理:编辑HelloWorld目录下setting.py ,把其中的
ALLOWED_HOSTS=[]改成ALLOWED_HOSTS=['*'] ##* 表示任意地址。
设置完还报错的话,有一个原因需要将端口加入到安全组.
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
改为
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'django',
'USER':'root',
'PASSWORD':'hmxMENG224',
'HOST':'127.0.0.1',
'PORT':'3306',
}
然后在项目的__init__.py文件下输入
import pymysql
pymysql.install_as_MySQLdb()
CREATE DATABASE 数据库名;
CREATE TABLE `f_user` (
`uid` bigint(11) NOT NULL AUTO_INCREMENT,
`appid` char(15) DEFAULT NULL COMMENT '该用户所属机构',
`phone` varchar(11) NOT NULL COMMENT '用户登录手机号',
`uname` varchar(20) DEFAULT NULL,
`passwd` varchar(50) NOT NULL COMMENT '登录密码',
`create_time` int(11) NOT NULL COMMENT '账号创建时间',
`update_time` int(11) NOT NULL COMMENT '账号创建时间',
`isused` tinyint(4) DEFAULT '1' COMMENT '1为有效,0为无效(已删除)',
PRIMARY KEY (`uid`),
KEY `appid` (`appid`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在先前创建的 HelloWorld 目录下的 HelloWorld 目录新建一个 view.py 文件,并输入代码:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world ! ")
接着,绑定 URL 与视图函数。打开 urls.py 文件,删除原来代码,将以下代码复制粘贴到 urls.py 文件中:
from django.conf.urls import url
from . import view
urlpatterns = [
url(r'^$', view.hello),
]
也可以改一种访问方式
from django.conf.urls import url
from . import view
urlpatterns = [
url(r'^hello$', view.hello),
]
注意:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。
Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。