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自增主键断层问题

Python-Django基础的更多相关文章

  1. python Django基础操作

    Django常用命令 创建Django项目 Django-admin startprotect  mysite 创建项目以后,以下生成的文件 最外层的file:mysite/ 根目录只是你的项目的容器 ...

  2. python django基础(二)

    django MTV模式之----template模版 django是动态的网页,后台的数据需要动态的插入到前端中,这时就依赖于django的template模版框架.django支持多种模版框架,下 ...

  3. python django基础(一)

    Django简介:Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的框架模式,即模型M,视图V和控制器C.不过在Django实际使用中,Django更关注的是模型(Mod ...

  4. python django基础五 ORM多表操作

    首先在创建表的时候看下分析一下 1.作者表和作者详细地址表  一对一关系 理论上谁都能当主表 把Author设置成主表 au=models.OneToOneField(to='AuthorDetail ...

  5. python django基础四 ORM简介

    ORM,全称是object relation mapping.翻译过来,就是对象关系映射. 主要来学习MySQL操作,MySQL是一个软件.它的优点:1.免费 2.开源 pymysql,就是Mysql ...

  6. python django基础三 模版渲染

    request对象 当一个页面被请求时,Django就会创建一个包含本次请求原信息的HttpRequest对象.Django会将这个对象自动传递给响应的视图函数,一般视图函数约定俗成地使用 reque ...

  7. python django基础一web框架的本质

    web框架的本质就是一个socket服务端,而浏览器就是一个socker客户端,基于请求做出相应,客户端先请求,服务器做出对应响应 按照http协议的请求发送,服务器按照http协议来相应,这样的通信 ...

  8. python django基础二URL路由系统

    URL配置 基本格式 from django.conf.urls import url #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数执行,就不再往下循环了,并给函数 ...

  9. Python之路-(js正则表达式、前端页面的模板套用、Django基础)

    js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...

  10. python的django基础篇

    一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...

随机推荐

  1. 《React Native 精解与实战》书籍连载「Android 平台与 React Native 混合开发」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...

  2. 循环语句--do...while

    do...while循环 格式: 执行流程 执行顺序:①③④>②③④>②③④…②不满足为止. ①负责完成循环变量初始化. ②负责判断是否满足循环条件,不满足则跳出循环. ③具体执行的语句 ...

  3. Python Revisited Day 05(模块)

    目录 5.1 模块与包 5.1.1 包 5.2 Python 标准库概览 5.2.1 字符串处理 io.StringIO 类 5.2.3 命令行设计 5.2.4 数学与数字 5.2.5 时间与日期 5 ...

  4. 新Chrome浏览器不支持html5的问题

    window.applicationCache事件,最新chrome浏览器已经不能判断是否支持html5: 之前,在IE和Google中 为ApplicationCache对象,而在FF中为 Offl ...

  5. 【学习总结】Git学习-参考廖雪峰老师教程-总

    公元2018-10-21 实验室台式机 win7 64位 参考教程: 廖雪峰Git教程 其他资料:Git-book 北大一只总结的笔记,最终整理的时候可以参考:Git笔记 评论区看到的另一个人,总结在 ...

  6. hdu 3037——Saving Beans

    Saving Beans Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...

  7. c语言提高(第二次作业)

    1. 画出字符串一级指针内存四区模型 #include <stdio.h> #include <string.h> int main(void) { char buf[20]= ...

  8. c语言提高第二天

    一.指针强化1.指针也是一种数据类型,指针变量也是一种变量,和int a本质是一样的 1)指针变量也是一种变量,也有空间,32位程序大小为4个字节 int *p = 0x1122; 2)*操作符,*相 ...

  9. java 的数据类型及其所占的字节数

    1.char java中的一个char是2个字节.java采用unicode,2个字节来表示一个字符. 一个数字或英文或汉字都是一个字符,只不过数字和英文时,存储的2个字 节的第一个字节都为0,就是浪 ...

  10. jap篇 之 JSTL标签库

    JSTL标签库: JSTL: JSP Standard Tag Library 作用:和[EL配合]使用,可以让用户[尽可能少的使用java源码]. 1,导入jar包 导入(复制粘贴到项目中的lib目 ...