我的操作系统为centos6.5
1 首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包。
?
1
2
3
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 解压并安装
?
1
2
3
4
5
6
7
8
# 解压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环境变量
?
1
2
3
4
5
6
# 在/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
?
1
2
3
4
# 下载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
?
1
2
# 创建一个名为mysite的项目
django-admin startproject mysite
2 进入该project并修改settings配置文件
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 进入该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并不会为我们创建数据库,我们需要手动创建数据库。
?
1
2
3
4
5
6
7
8
# 启动数据库服务
service mysqld start
# 登录数据库并进入数据库命令行界面
mysql
# 创建一个名为mysite的数据库。settings文件配置中我们定义了数据库名称为mysite
mysql>CREATE DATABASE mysite CHARACTER SET=utf8;
# 退出数据库命令行界面
mysql> quit
4 在mysite项目中新建一个名为polls的app
[root@bogon mysite]# python3 manage.py startapp polls
5 修改polls/models.py文件
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#
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属性
?
1
2
3
4
5
6
7
8
9
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文件已被修改。
?
1
python3 manage.py makemigrations poll
8 (本步骤可略过)如果我们想知道对polls/models.py所进行的修改映射到数据库中会如何操作,可使用如下命令:
?
1
python3 manage.py sqlmigrate polls 0001
9 将对models文件进行的修改映射到数据库中
10 (本步骤可省略)如果想要在admi界面对自定义的模型进行增删查改,需要在对app下的admin.py文件进行修改。
?
1
2
3
from .models import student
# 对student模型进行登记
admin.site.register(student)
以上就是小编为大家带来的Linux下安装Python3和django并配置mysql作为django默认服务器方法全部内容了,希望大家多多支持服务器之家~
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。