zoukankan      html  css  js  c++  java
  • Python-Django基础

    django目录

    -settings
    -urls
    -views
    ******强调:setting中'django.middleware.csrf.CsrfViewMiddleware'中间件先注释掉
    -执行django项目:python3 manage.py runserver 127.0.0.1:8000

    django进入命令行模式

    terminal中输入

    登陆注册

    -form action中:
    -三种写法:
    一:不写
    二:http://127.0.0.1/login/
    三:/login/(推荐用这种)

    新手三件套

    render:返回一个模板(页面)
    redirect:重定向到某个地址
    HttpResponse:返回字符串
    ****重点:本质上返回的都是HttpResponse对象

    MTV,MVC

    orm简介

    -orm能创建表,创建字段,删除字段,修改字段,但是不能创建数据库
    -一个新的项目,不要用原来的数据库
    -是什么?对象关系映射
    -python代码《---对象--》orm层转换《-----sql---》mysql/oracle。。。
    -要创建一个表,有了orm,只需要写一个类就可以了

    orm连接mysql步骤:
    0 手动创建出数据库:0107
    1 在settings中配置:
    'default': {
    # 这些key必须都是大写
    'ENGINE': 'django.db.backends.mysql',
    # 数据库名字
    'NAME': '0107',
    'HOST':'127.0.0.1',
    'PORT':3306,
    'USER':'root',
    # 'PASSWORD':''
    }
    2 再app的init文件中写:
    import pymysql
    pymysql.install_as_MySQLdb()
    3 在models中创建类,类中写字段
    class UserInfo(models.Model):
    id=models.AutoField(primary_key=True)
    name=models.CharField(max_length=32)
    pwd=models.CharField(max_length=32)
    4 把表同步到数据库
    #数据库表并没有同步到数据库,只是在migrations内做了一个记录
    -python3 manage.py makemigrations
    #才将数据表同步到数据库
    -python3 mangae.py migrate
    orm连接sqllite
    从第三步开始,往后走



    创建出来的表介绍:
    1 orm自动将app的名字拼在表前_类名
    2 orm会自动创建出好多其他表(不要管,不要删)

    基于orm的用户登陆

    orm查询:
    -查询所有:
    类名.objects.all()
    -有过滤条件的查询
    类名.objects.filter(name='lqz',pwd='123').first()
    select * from biao where name=lqz and pwd=1234

    TTL:

    1 三件套render,redirect,HttpResponse
    2 post提交数据,请求地址中也可以携带参数,(/login/?name=lqz&pwd=123)参数从GET中取
    3 post请求体的默认格式:name=lqz&pwd=123
    4 form不要写成from(记住了)
    5 其实从前台传的数据,数据部分全都放到一个列表中,取出列表用:GET/POST.getlist('name'),只要取最后一个值get('name')
    6 orm django 的orm,
    7 使用orm(链接mysql):
    1 手动创建出数据库
    2 在settings中配置
    3 在init中写:
    import pymysql
    pymysql.install_as_MyQLdb()
    4 取models中写类(类必须继承models.Model)
    -在类中写属性:
    name=medels.CharField(max_length=64)
    5 数据库迁移:
    python3 manage.py makemigrations
    python3 manage.py migrate
    -有个简便方法
    6 使用数据表:
    在view中使用:
    -先导入使用的类
    -查询所有:类名.objects.all()
    -过滤:类名.objects.filter(过滤条件)
    -创建:类名.objects.create(参数)
    -删除:类名.objects.filter().delete()
    -修改:类名.objects.filter().update(参数)

    8 模板语言的for循环
    9 模板语言显示变量{{ 变量名 }}
    10 mysql自增主键断层问题

  • 相关阅读:
    下一座“金矿”:移动医疗的契机和风险
    android ViewStub简单介绍
    IT人员必须掌握的10项软技能
    Android ListView item 点击事件失效问题的解决
    前端之Android入门(3):MVC模式(上)
    Android 错误提示: Can't create handler inside thread that has not called Looper.prepare()
    Android 性能优化提示
    Android 学习资源
    元素水平对齐
    div垂直居中
  • 原文地址:https://www.cnblogs.com/du-jun/p/10235608.html
Copyright © 2011-2022 走看看