1 orm介绍
  ORM是什么
  ORM 是 python编程语言后端web框架 Django的核心思想,“Object Relational Mapping”,即对象-关系映射,简称ORM。  一个句话理解就是:创建一个实例对象,用创建它的类名当做数据表名,用创建它的类属性对应数据表的字段,当对这个实例对象操作时,能够对应MySQL语句
  1 tools--->Run manage.py Task
    python3 manage.py makemigrations
    只需要敲命令:makemigrations(记录数据库的修改记录)
    python3 manage.py migrate
    只需要敲命令:migrate(把数据同步到数据库)
 2 orm能干和不能干的事
  1 能创建数据表,新增,删除字段
  2 不能创建数据库
 3 orm增加字段:(注意数据库迁移命令2条)
  注意:后来增加的字段,需要有默认值
  phone=models.CharField(max_length=64,default='120')
 4 orm删除字段
  注释掉字段,执行数据库迁移命令2条
 5 orm修改字段
  直接修改字段,执行数据库迁移命令2条
 6 user单表的数据增删改查
  ***重点****:
  1 单表查询所有用户:models.User.objects.all()
   得到的是 queryset对象(当成列表),列表里面,一个一个的对象[user1,user2]
  2 render(request, 'userlist.html', {'user_list': ret})
  3 模板里:   {% for user in user_list %}
      #要循环的内容 
       {{user.name}}
      {% endfor%}
  4 get请求携带参数:
   http://127.0.0.1:8000/deleteuser/?id=1&c=1
   后台取值:request.GET.get('id')
     request.GET['id']
  5 orm删除记录 models.User.objects.filter(id=id).delete()
   返回值:影响的行数
  6 前台post提交的数据取值:name=request.POST.get('name')
  7 orm保存:
   两种方式:
   1 user=models.User.objects.create(name=name,password=pwd,address=addr)
   2 user=models.User(name=name,password=pwd,address=addr)
     user.save()
  8 orm查询单条数据:user=models.User.objects.filter(id=id).first()
  9 orm的修改 models.User.objects.filter(id=id).update(name=name,password=pwd,address=addr)
  
 7 django的请求生命周期
 Django的请求生命周期是指当用户在浏览器上输入url到用户看到网页的这个时间段内,Django后台所发生的事情
 而Django的生命周期内到底发生了什么呢??
 1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端
 请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中.
 2. url经过Django中的wsgi,再经过Django的中间件,最后url到过路由映射表,在路由中一条一条进行匹配,
 一旦其中一条匹配成功就执行对应的视图函数,后面的路由就不再继续匹配了.
 3.视图函数根据客户端的请求查询相应的数据.返回给Django,然后Django把客户端想要的数据做为一个字符串返回给客户端.
 4. 客户端浏览器接收到返回的数据,经过渲染后显示给用户.

最新文章

  1. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
  2. Linux uniq命令
  3. Atitit 图像处理知识点  知识体系 知识图谱v2
  4. 基于 IdentityServer3 实现 OAuth 2.0 授权服务数据持久化
  5. 菜刀轻松砍杀安全狗 asp一句话中转脚本
  6. Boost::Thread使用示例 - CG-Animation - 博客频道 - CSDN.NET
  7. JAVA 创建TXT文件,写入文件内容,读取文件内容
  8. Android架构分析之LOG模块
  9. 过滤文件代码 python
  10. PHP Excel使用方法
  11. 如何解决PeopleSoft Process Scheduler发布问题
  12. eval方法
  13. ADB interface驱动
  14. HDU4655【题意+分析】
  15. 使用closest替换parent
  16. 在 Ubuntu 16.04上安装 vsFTPd
  17. Vue.js 和 MVVM 的小细节
  18. 还是畅通工程(hdu1233)并查集应用
  19. Linux 服务器 MySql的安装和网站的发布
  20. hdu 2709 递推

热门文章

  1. 【转】C语言中的符号优先级
  2. hibernate状态转换关系图【原】
  3. HDU - 6313 Hack It(构造)
  4. oldboy s21day05
  5. js模板引擎-art-template常用总结
  6. MySQL 字符集问题
  7. SQL Server进阶(十二)函数
  8. Java字符串格式化输入
  9. Windows下 OpenSSL DES加密配置
  10. Newtonsoft.Json序列化Enum类型