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. PostgreSql扩展Sql-动态加载共享库(C函数)

    基于 psql (PostgreSQL) 10.4 pg_language表定义了函数实现所使用的语言.主要支持了C语言和SQL语句.一些可选的语言包括pl/pgsql.tcl和perl. ligan ...

  2. static 与final abstract关键字

    一.通常访问类的属性与方法需要创建该类的实例,而static关键字的访问不需要某个特定的实例. 1.静态变量 使用类名.变量直接访问 package text5; public class Fathe ...

  3. day02(编程语言,解释器,环境变量,执行方式,pycharm,pip,变量三大组成)

      上节课复习: 重点: 1,进制转换:二进制与十六进制 2,内存分布:栈区 与 堆区 10101001110111 => 2a77 abf1 => 1010101111110001 计算 ...

  4. mybatis 使用缓存策略

    mybatis中默认开启缓存 1.mybatis中,默认是开启缓存的,缓存的是一个statement对象. 不同情况下是否会使用缓存 同一个SqlSession对象,重复调用同一个id的<sel ...

  5. 记录下mainfest.json 原生标题的按钮监听

    首先在mainfest.json中 plus下添加以下代码 "launchwebview": {"titleNView": {"backgroundc ...

  6. Jupyter Notebook(推荐使用Anaconda安装)

    一.Jupyter Notebook介绍 1.简介 Jupyter Notebook是基于网页的用于交互计算的应用程序.其可被应用于全过程计算:开发.文档编写.运行代码和展示结果. 简而言之,Jupy ...

  7. BBS 502 BadGateway 原因分析

    说明: LNMP架构. crontab里有每隔20分钟重启php的任务:然后我用python写了个每1分钟检测php-cgi进程是否存在的脚本,如果不存在则调用重启php的脚本,并邮件通知管理员.cr ...

  8. vue实战记录(二)- vue实现购物车功能之创建vue实例

    vue实战,一步步实现vue购物车功能的过程记录,课程与素材来自慕课网,自己搭建了express本地服务器来请求数据 作者:狐狸家的鱼 本文链接:vue实战-实现购物车功能(二) GitHub:sue ...

  9. python中os.path.isdir()函数的使用

    在python 中,os.path.isdir(path)函数主要用来判断函数内部的path是否为一个目录 具体关于这个函数的解说参考博客https://blog.csdn.net/xjp_xujip ...

  10. redis简单命令总结

    1.连接到redis服务器:redis-cli -h 127.0.0.1 -p 6379 -a 密码 select index 切换 redis 数据库 flushdb 删除当前数据库所有的 key ...