zoukankan      html  css  js  c++  java
  • Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期

    Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期

    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. 客户端浏览器接收到返回的数据,经过渲染后显示给用户.

    转载于:https://www.cnblogs.com/3sss-ss-s/p/9916954.html

     
  • 相关阅读:
    使用微软WPF技术开发产品优势究竟在那里
    北京地铁的众生相,发上来和大家分享(北京白领生活真实写照)
    长期提供WindowsPhone7培训 & HTML5培训 & Silverlight培训 & WPF培训
    Silverlight中开发和设计人员的合作
    Silverlight 动态调用 WebService
    (学)Lazarus 在 WinCE 下如何取消标题栏上的 OK 或 X 按钮
    (学)新版动态表单研发,阶段成果4
    (学)新版动态表单研发,阶段成果5
    (原)Lazarus下WinCE终端、服务器心跳监控(Ping)源码
    (原)Lazarus 在 Thread 中使用 SQLQuery 查询Oracle 会出现异常
  • 原文地址:https://www.cnblogs.com/xiao-xue-di/p/13847671.html
Copyright © 2011-2022 走看看