我的操作系統為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.shvim /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# 安裝pippython3 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配置文件
# 進入該projectcd 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文件配置中我們定義了數據庫名稱為mysitemysql>CREATE DATABASE mysite CHARACTER SET=utf8;# 退出數據庫命令行界面mysql> quit
4 在mysite項目中新建一個名為polls的app
[root@bogon 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
新聞熱點
疑難解答
圖片精選