配置环境
1 安装virtualenv
sudo pip3 install virtualenv -i https://pypi.douban.com/simple/
2 安装virtualenvwrapper
sudo pip3 install virtualenvwrapper -i https://pypi.douban.com/simple/
3 第一次安装完毕后需要进行一下初始化设置
打开.bashrc配置文件 vi .bashrc 或vi .zshrc
4 紧接着配置环境变量到 .bashrc 如果使用的zsh就把这些内容放在.zshrc里面,source .zshrc配置生效
export WORKON_HOME=/home/bc/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
[图片上传失败...(image-902fad-1523883248838)]
使环境变量马上生效 source.zshrc
[图片上传失败...(image-11c1e4-1523883248838)]
创建虚拟环境
创建:mkvirtualenv [虚拟环境名称]
删除:rmvirtualenv [虚拟环境名称】
进入:workon [虚拟环境名称]
退出:deactivate
workon 查看虚拟环境中已经安装的包 pip list
安装Django
pip install django==1.8.2
查看版本:进入python shell,运行如下代码
import django
django.get_version()
创建项目
命令django-admin startproject test1
进入test1目录,目录结构如下图:
[图片上传失败...(image-e725b7-1523883248837)]
创建应用 python mana ge.py startapp booktest
设计模型
[图片上传失败...(image-9ff924-1523883248837)]
在init文件里设置如下
import pymysql
pymysql.install_as_MySQLdb()
在虚拟环境中安装mysql包
pip install pymysql(新版)
settings里面数据库相关设置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test2',
'USER': '用户名',
'PASSWORD': '密码',
'HOST': '数据库服务器ip地址,本地可以使用localhost',
'PORT': '端口,默认为3306',
}
}
创建模型
class HeroInfo(models.Model):
bname = models.CharField(max_length=20)
hgender = models.BooleanField(default=True)
isDelete = models.BooleanField(default=False)
hcontent = models.CharField(max_length=100)
hbook = models.ForeignKey('BookInfo')
class Meta():
设置表名
db_table = 'Heroinfo'
设置模型之后我们需要有两个步骤
生成迁移文件
1、 python manage.py makemigrations
执行迁移(迁移生成表)
2、python manage.py migrate
测试数据操作
进入python shell,进行简单的模型API练习
python manage.py shell
[图片上传失败...(image-995536-1523883248837)]
引入需要的包:
from booktest.models import *
from django.utils import timezone
from datetime import *
查询所有图书信息:BookInfo.objects.all()
新建图书信息
b = BookInfo()
b.btitle="射雕英雄传"
b.bpub_date=datetime(year=1990,month=1,day=10)
b.save()
查找图书信息
b=BookInfo.objects.get(pk=1)
输出图书信息
b
b.id
b.btitle
修改图书信息:
b.btitle=u"天龙八部"
b.save()
删除图书信息:
b.delete()
[图片上传失败...(image-36927e-1523883248836)]