一直在python2.7下进行django开发,突然想试一试python3,于是今天的主题就诞生了。
python3.5源码安装包百度盘链接 https://pan.baidu.com/s/1dFGnQbJ
演示环境:
redhat 7.2 x86_64bit,SELinux关闭,防火墙关闭
为了方便管理Python模块,所以安装Python的时候会安装pip包管理工具,但是这个需要SSL/TLS,所以请提前使用yum命令安装好相应依赖:
yum install gcc-c++ openssl-devel
还有相应的数据库依赖:
yum install sqlite-devel MySQL-python -y
1.下载解压源码包
tar -zxf Python-3.5.4.tgz
2.编译安装
cd Python-3.5.4 && ./configure && make && make install
3.创建Python虚拟环境,并在虚拟环境中安装django
pip3.5 install virtualenv && virtualenv -p /usr/local/bin/python3.5 /home/python35 && source /home/python35/bin/activate && pip install django
把以上步骤用 && 连接起来放到一个脚本中一键执行这个环境就起来了。
对于使用mariadb数据库的用户在启动django应用的时候如果出现以下错误提示:
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'.
Did you install mysqlclient or MySQL-python?
解决办法:
pip install pymysql
然后将以下内容加入到你的项目_init_.py文件中即可
(python35) [root@lockey106 oms_iooi]# cat _init_.py
import pymysql
pymysql.install_as_MySQLdb()
以下为一个模型测试:
[root@lockey106 userauth]# cat models.py
from django.db import models
# Create your models here.
class Test(models.Model):
name = models.CharField(max_length=20)
(python35) [root@lockey106 oms_iooi]# python manage.py makemigrations
Migrations for 'userauth':
userauth/migrations/0001_initial.py
- Create model Test
(python35) [root@lockey106 oms_iooi]# python manage.py migrate
以下为一个Django 数据库API测试
python manage.py shell
>>> from userauth.models import Test
>>> x=Test(name="gooood")
>>> x.save()