Django虚拟环境配置

环境
win10家庭版64位 + python 3.5 + Django 1.8.2

1.创建virtualenv目录 
开始/运行/cmd回车,进入cmd窗口,到自己指定的目录下创建virtualenv目录
D:\python\django_project>mkdir mysite
D:\python\django_project>cd mysite

2.安装virtualenv 
这里使用pip进行安装 
D:\python\django_project\mysite>pip install virtualenv
Collecting virtualenv
Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB)
100% |████████████████████████████████| 1.8MB 521kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-15.1.0

安装过程可能有失败,出现红色的提示文字,这时直接重新执行安装,一般就可以了。

3.创建virtualenv虚拟环境 
使用virtualenv env来创建一个名字为env的虚拟环境 
D:\python\django_project\mysite>virtualenv env
Using base prefix 'd:\\users\\ajie\\appdata\\local\\programs\\python\\python35'
New python executable in D:\python\django_project\mysite\env\Scripts\python.exe
Installing setuptools, pip, wheel...done.
进入env目录,可以看到目录结构如下: 
D:\python\django_project\mysite>cd env

D:\python\django_project\mysite\env>dir
驱动器 D 中的卷是 work
卷的序列号是 F814-4F91

D:\python\django_project\mysite\env 的目录

2017/08/08 19:21 <DIR> .
2017/08/08 19:21 <DIR> ..
2017/06/22 11:25 <DIR> Include
2017/08/08 19:21 <DIR> Lib
2017/08/08 19:21 60 pip-selfcheck.json
2017/08/08 19:25 <DIR> Scripts
2017/08/08 19:21 <DIR> tcl
1 个文件 60 字节
6 个目录 33,233,276,928 可用字节

进入虚拟环境 
通过env下Scripts目录中的activate.bat批处理文件,开启虚拟环境 
D:\python\django_project\mysite\env>cd Scripts

D:\python\django_project\mysite\env\Scripts>activate.bat

退出虚拟环境用deactivate命令

4.在虚拟环境中安装Django

安装Django1.8.2
进入虚拟环境,使用pip安装Django 
(env) D:\python\django_project\mysite\env\Scripts>pip install django==1.8.2

5.启动服务

cd D:\python\django_project\mysite\env\Scripts\text1

 D:\python\django_project\mysite\env\Scripts\text1>python manage.py runserver

服务启动成功 

Performing system checks...


System check identified no issues (0 silenced).


You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
October 11, 2017 - 13:25:00
Django version 1.11.6, using settings 'text2.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
[11/Oct/2017 13:25:27] "GET / HTTP/1.1" 200 1716

在浏览器输入http://localhost:8000/     (端口号为8000)显示界面成功

6.创建项目

创建项目需要在虚拟环境中创建

命令django-admin startproject test1

设计介绍

本示例完成“图书-英雄”信息的维护,需要存储两种数据:图书、英雄
图书表结构设计:
表名:BookInfo
图书名称:btitle
图书发布时间:bpub_date
英雄表结构设计:
表名:HeroInfo
英雄姓名:hname
英雄性别:hgender
英雄简介:hcontent
所属图书:hbook
图书-英雄的关系为一对多

 

7.创建应用
创建应用的命令:

cd D:\python\django_project\mysite\env\Scripts\text1
python manage.py startapp booktest
定义模型类

有一个数据表,就有一个模型类与之对应
打开models.py文件,定义模型类
引入包from django.db import models
模型类继承自models.Model类
说明:不需要定义主键列,在生成时会自动添加,并且值为自动增长
当输出对象时,会调用对象的str方法

models.py

复制代码
from django.db import models

class BookInfo(models.Model):
btitle = models.CharField(max_length=20)
bpub_date = models.DateTimeField()
def __str__(self):
return self.pk

class HeroInfo(models.Model):
hname = models.CharField(max_length=20)
hgender = models.BooleanField()
hcontent = models.CharField(max_length=20)
hBook = models.ForeignKey('BookInfo')

def __str__(self):
return self.pk
复制代码

 

生成数据表

激活模型:编辑settings.py文件,将booktest应用加入到installed_apps中

8.生成迁移文件:根据模型类生成sql语句
python manage.py makemigrations

执行迁移:执行sql语句生成数据表
python manage.py migrate

9.测试数据操作

进入python shell,进行简单的模型API练习
python manage.py shell
进入shell后提示如下:

引入需要的包:
from booktest.models import BookInfo,HeroInfo
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()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值