django1——创建基础流程

如图1所示,设计模式MVT
  • MVT  全拼为模型-视图-模板
  • MVT核心 思想:  解耦
  • MVT  解析
    • M(模型)全拼为Model ,与MVC中的M功能相同,负责数据处理,内嵌了ORM框架。
    • V(视图)全拼为View ,与MVC中的C功能相同,接收HttpRequest,业务处理,返回HttpResponse。
    • T(模板)全拼为Template ,与MVC中的V功能相同,负责封装构造要返回的html,内嵌了模板引擎。
2,搭建虚拟环境
  • 安装虚拟环境的命令
sudo pip安装virtualenv
 sudo pip安装virtualenvwrapper
  • python3中创建虚拟环境
mkvirtualenv -p python3 py3_django 
- py3_django为虚拟环境名字
  • 查看与使用
workon两次tab键#查看
workon py3_django#使用
  • 删除虚拟环境
rmvirtualenv虚拟环境名称

  删除虚拟环境py3_django

  先退出:关闭
  再删除:rmvirtualenv py3_django
  • 安装的Django的
PIP安装包名称

  (安装django1.8.2的包
  pip安装django == 1.8.2
Pip freeze - 查看安装的包
3,创建项目
Cd / home / python / Desktop /            指定路径创建
Django-admin startproject BookManager ---项目名字

4,创建应用
Cd BookManager /
Python manage.py startapp 图书---应用名称

在INSTALLED_APPS加入书
用pychram打开需要添加对应环境
通过终端命令哪个python查看python路径
5,测试运行
python manage.py runserver python manage.py runserver ip:端口---端口可以不写默认8000
python manage.py runserver
6,创建模型类---在models.py中
django.db 导入 模型

#在这里创建你的模型。


#准备书籍列表信息的模型类
BookInfo (models.Model):
   #创建字段,字段类型..
   name = models.CharField(max_length = 10

   def __str__ self ):
       返回 self .name


#准备人物列表信息的模型类
class PeopleInfo(models.Model):
    name = models.CharField(max_length = 10
    gender = models.BooleanField()
   #外键约束:人物属于哪本书
   book = models.ForeignKey(BookInfo)

   def __str__ self ):
       返回 self .name


7,模型迁移
  • 生成迁移文件:根据模型类生成创建表的语句
      python manage.py makemigrations
  • 执行迁移:根据第一步生成的语句在数据库中创建表
      python manage.py migrate
8,本地化
9,创建管理员
python manage.py createsuperuser ---创建超级管理员
10,注册模型 - 在admin.py中操作
django.contrib 导入 管理
Book.models 导入 *
#在这里注册你的模型。

#注册书籍模型
admin.site.register(的BookInfo)


#自定义站点管理界面的类:重写list_display属性
class PeopleAdmin(admin.ModelAdmin):
    list_display = [ 'id' 'name' 'gender' 'book' ]


#注册人物模型
admin.site.register(PeopleInfo PeopleAdmin)
11,视图操作
django.shortcuts 导入 渲染
#导入HTTPesponse模块
django.http 导入 HttpResponse
Book.models 导入 *


def 索引(请求):
   #准备上下文:定义在字典中(测试数据)
   context = { 'title' '测试模板处理数据' }

   #将上下文交给模板中的进程处理,处理后视图想用给客户端
   返回 呈现(请求'Book / index.html' 上下文)


def bookList (request):
   #查询数据库书籍列表数据
   bookInfos = BookInfo.objects.all()#数据库中读取数据
   #构造上下文
   context = { 'booklist' :bookInfos}
   返回 呈现(请求'Book / booklist.html' 上下文)

def peopleList (request bookid):
   #查询数据库人物列表数据
   book = BookInfo.objects.get id = bookid)#读取数据
   #外键查询:人物所属于哪本书
   peopleInfos = book.peopleinfo_set.all()#读取数据

   #构造上下文
   context = { 'peoplelist' :peopleInfos}
   返回 render(request 'Book / peoplelist.html' context)
应用网址
从  django.conf.urls 导入 网址
导入Book.views


urlpatterns = [
    url(r'^ $' Book.views.index)
   url(r'^ booklist / $' Book.views.bookList)
   url(r'^(\ d +)/ $' Book.views.peopleList)
]
管理器网址
urlpatterns = [
    URL(R '^管理员/' 包括(admin.site.urls))
   #应用中定义URLconf,包含到项目URLconf中
    #正则为:只要不是'admin /'就算匹配成功
   url(r'^' include('Book.urls' ))
]

12,HTML文件
书目
<!DOCTYPE html >
<html lang = “en” >
<HEAD>
    <meta charset = “UTF-8” >
    <TITLE> 书籍列表信息</ TITLE>
</ HEAD>
<BODY>
<UL>
   {%本书书目%}
       <LI> <a href = “/ {{ .ID}}“>{{ }} </A> </ LI>
   {%endfor %}

</ UL>
</ BODY>
</ HTML>
peoplelist
<!DOCTYPE html >
<html lang = “en” >
<HEAD>
    <meta charset = “UTF-8” >
    <TITLE> 人物列表信息</ TITLE>
</ HEAD>
<BODY>
<UL>
   {%人物列表中的人员  %}
       <li> {{ people 名称}} </ li>
   {%endfor %}

</ UL>
</ BODY>
</ HTML>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值