Linux下安装Python3的django并配置mysql作为django默认数据库(转载)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下安装Python3的django并配置mysql作为django默认数据库(转载)相关的知识,希望对你有一定的参考价值。
我的操作系统为centos6.5
1 首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包。
yum install mysql mysql-devel
#为了测试方便,我们需要安装sqlite-devel包
yum install sqlite-devel
2 接下来需要安装Python了,因为Python3已经成为主流,所以接下来我们要安装Python3,到官网去下载Python3的新版本。本人下载的版本为python3.5.2
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
3 解压并安装
# 解压tar包 tar xf Python-3.5.2.tgz # 进入解压后的包 cd Python-3.5.2 # 配置安装信息,我的安装路径为/usr/install/python3/ ./configure --prefix=/usr/install/python3/ # 编译并安装 make && make install
4 配置PATH环境变量
# 在/ect/profile.d/文件下新建一个文件python3.sh vim /etc/profile.d/python3.sh # 添加下面这句话 export PATH=$PATH:/usr/install/python3/bin/ #然后执行 export PATH=$PATH:/usr/install/python3/bin/
5 默认情况下安装完Python3.5.2已经安装了pip,但我想要安装较新版本的pip
# 下载pip安装程序 wget --no-check-certificate https://bootstrap.pypa.io/get-pip.py # 安装pip python3 get-pip.py
6 安装django
pip install Django
7 安装mysqlclient,mysqlclient是一个Python3与mysql的连接器。
pip install mysqlclient
至此,Python与django安装完成!
如何配置mysql为django默认数据库?
1 创建一个新的project
# 创建一个名为mysite的项目 django-admin startproject mysite
2 进入该project并修改settings配置文件
# 进入该project cd mysite # 修改settings配置文件 vim mysite/settings.py # 找到 DATABASES 属性 DATABASES = { ‘default‘: { ‘ENGINE‘: ‘django.db.backends.mysql‘, # 将mysql作为django默认数据库 ‘NAME‘:‘mysite‘, # 配置数据库名称 ‘USER‘:‘root‘, # 数据库用户 ‘PASSWORD‘:‘123456‘, # 用户密码 ‘HOST‘:‘127.0.0.1‘, # 配置数据库服务所在地址,若为空则默认为localhost ‘PORT‘:‘3306‘, # 配置端口 } }
3 django并不会为我们创建数据库,我们需要手动创建数据库。
# 启动数据库服务 service mysqld start # 登录数据库并进入数据库命令行界面 mysql # 创建一个名为mysite的数据库。settings文件配置中我们定义了数据库名称为mysite mysql>CREATE DATABASE mysite CHARACTER SET=utf8;
# 退出数据库命令行界面
mysql> quit
4 在mysite项目中新建一个名为polls的app
[[email protected] mysite]# python3 manage.py startapp polls
5 修改polls/models.py文件
# vim polls/models.py # 修改如下: from django.db import models # Create your models here. class student(models.Model): name=models.CharField(max_length=24) school=models.CharField(choices=((‘sc01‘,‘第一中学‘),(‘sc02‘,‘第二中学‘),(‘sc03‘,‘第三中学‘)),max_length=32) sfid=models.IntegerField(primary_key=True,unique=True,) phone=models.IntegerField(blank=True,null=True) emial=models.EmailField(null=True,blank=True) def __str__(self): return self.name
若想理解models.CharField()等方法,可以参考我的文章: django中的model field 。
6 配置settings文件中的INSTALLED_APPS属性
INSTALLED_APPS = [ ‘django.contrib.admin‘, ‘django.contrib.auth‘, ‘django.contrib.contenttypes‘, ‘django.contrib.sessions‘, ‘django.contrib.messages‘, ‘django.contrib.staticfiles‘, ‘polls.apps.PollsConfig‘, # 添加该行 ]
7 通知django,polls中的models文件已被修改。
python3 manage.py makemigrations poll
8 (本步骤可略过)如果我们想知道对polls/models.py所进行的修改映射到数据库中会如何操作,可使用如下命令:
python3 manage.py sqlmigrate polls 0001
9 将对models文件进行的修改映射到数据库中
python manage.py migrate
10 (本步骤可省略)如果想要在admi界面对自定义的模型进行增删查改,需要在对app下的admin.py文件进行修改。
from .models import student # 对student模型进行登记 admin.site.register(student)
(此博客为转载)
以上是关于Linux下安装Python3的django并配置mysql作为django默认数据库(转载)的主要内容,如果未能解决你的问题,请参考以下文章
Linux下安装部署 Nginx + uWSGI + Django