Linux下安装Python3和django并配置mysql作为django默认服务器方法

作者:jingxian 时间:2023-11-15 01:04:44 

我的操作系统为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

[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

若想理解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)
标签:python3,django,mysql,Linux
0
投稿

猜你喜欢

  • Python爬虫+Tkinter制作一个翻译软件的示例

    2023-12-14 07:22:42
  • Python快速实现分列转到行的示例代码

    2021-08-13 09:14:11
  • 基于PyQT5制作一个课堂点名系统

    2023-10-08 20:52:13
  • Django 如何实现文件上传下载

    2021-07-16 02:54:15
  • JS模拟实现哈希表及应用详解

    2024-04-23 09:25:52
  • 解决python3中自定义wsgi函数,make_server函数报错的问题

    2023-06-13 08:03:24
  • Python+Pillow+Pytesseract实现验证码识别

    2023-07-19 14:50:44
  • python实现进度条的多种实现

    2021-03-20 10:39:52
  • iscroll动态加载数据完美解决方法

    2024-04-10 13:59:01
  • Scrapy框架爬取Boss直聘网Python职位信息的源码

    2022-06-30 21:02:47
  • python查看FTP是否能连接成功的方法

    2023-11-04 13:31:50
  • 浅析python递归函数和河内塔问题

    2023-03-05 21:27:33
  • POST与GET方法的区别简要分析

    2022-06-26 17:27:36
  • Python+OpenCV图像处理——实现轮廓发现

    2023-12-12 23:30:31
  • Python编程实现控制cmd命令行显示颜色的方法示例

    2023-07-24 05:39:45
  • MySQL数据库数据备份和恢复详解

    2009-07-15 10:51:00
  • 简单的ASP生成HTML并分页程序

    2009-07-20 12:32:00
  • Python中import机制详解

    2023-08-25 10:30:29
  • go语言获取系统盘符的方法

    2024-05-22 10:19:47
  • git设置忽略文件.gitignore的方法

    2023-05-18 02:12:19
  • asp之家 网络编程 m.aspxhome.com