模板语法:(只有一下两种情况)
1:{{ obj}}                         变量相关
2:{% for i in list %}              逻辑相关{% endfor %}今日内容:创建路由:新创建的路由必须去settings注册创建:python.manage.py startapp app02注册:1.app  (支持简写)2.app02.apps.App01Config(全称)
启动django项目的时候,确保一个端口只有一个django项目在占用,不然容易造成bug
用户能够访问的资源都在url中,只有url中开设的相关资源,你才能访问到(*****)html文件默认全都放在templates文件夹下
静态文件:前端框架,图片,css,js...默认放在static文件夹下下
static文件夹中默认创建的子文件夹css文件夹: 当前网站所有的样式文件js文件夹:  当前网站所有的js文件img文件夹: 当前网站所有的图片文件
静态文件的配置:1.STATICFILES_FIRS = [os.path.join(BASE_DIR,'static')2.STATICFILES_FIRS =(os.path.join(BASE_DIR,'static'),)注:1.都端资源都需要手动暴露给用户,这样你只要输入static文件夹内具体文件的路径,就能访问到2.STATIC_URL = '/static' 中 static 只是接口前缀,而不是文件夹的名字3.静态文间动态解析,动态的获取接口浅醉{% load static %}<link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}"><script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>重点:*****
python manage.py makemigrations:默认给所有APP生成迁移脚本(数据迁移记录)
python manage.py migrate:migrate做了什么:1.将相关的迁移脚本翻译成SQL语句,在数据库中执行这个SQL语句。2.如果这个SQL语句执行没有问题,那么就会将这个迁移脚本的名字记录到django_migrations中。migrate怎么判断哪些迁移脚本需要执行:1.将代码中的迁移脚本和数据库中django_migrations中的迁移脚本进行对比,如果发现数据库中,没有这个迁移脚本,那么就会执行这个迁移脚本。
这两中命令调用默认为全局,即对所有最新更改的model或迁移文件进行操作。如果想对部分app进行操作,就要在其后追加app name:form表单默认是ge(url+数据)请求方式,可通过method修改为post注: 改为post后,需要在settings中注掉一个中间建 csrf,用post提交数据的时候,django会去检查是否有一个csrf的随机字符串,如果没有就会报错.# 'django.middleware.csrf.CsrfViewMiddleware',eg: http://127.0.0.1:8000/login/?username=lina&password=123

视图函数的处理方式:
方式一:
if request.method == 'GET':print(request.method)  # 能够获取前端请求方式 并且是全大写的字符串return render(request,'login.html')
elif request.method == 'POST':return HttpResponse("拿到了 老弟")
方式二:
if request.method == 'POST':return HttpResponse('来啦 宝贝')
return render(request,'login.html')注:视图函数中 一般会先处理get请求获取前端数据:request.method获取请求方式GET:request.GET获取前端get提交的数据(类似一个大字典)取值:value是列表方式一: request.GET.get('xxx')request.GET.getlist('xxx')方式二: request.GET['XXX']注: 1.get默认取列表中的最后一个数据2.getlist会把列表中的数据全取出来3.强烈不建议使用第二种方式,列表中无数据会报错POSTrequest.POST获取前端post提交的数据(就类似于是一个大字典)取值request.POST.get('username')  # 虽然value是一个列表 但是默认只取列表最后一个元素# 强烈不建议你使用中括号的形式取值# 如果想直接把列表全部取出(******)request.POST.getlist('hobby')数据库的配置:
因为django默认使用的是sqlite数据库,所以要用其他数据库话要做到以下两步;
1.修改settingsDATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME':'fei','HOST':'127.0.0.1','PORT':3306,'USER':'root','PASSWORD':'678666','CHARSET':'utf8'}}
2.在项目名/应用名 下的__init__文件中让其使用pymysql连接数据库,而不是用mysqldbimport pymysqlpymysql.install_as_MySQLdb()
注: settings中k,v键值对中k要大写django orm: 对象关系映射
类---------->表
对象-------->一条记录
对象.属性--->字段对应的值
模型类:class M(models.Model):id = models.AutoField(primary_key=True)username = models.CharField(max_length=255)password = models.IntegerField()
注:1.在django中的orm中可以不写主键字段,django会帮你创建2.自己创建了,django不会再帮你创建3.charfield中必须指定max_length参数4.models中数据有变动后,需要执行 python manage.py makemigrations 与 python manage.py migrate,两者缺一不可表字段的增删改查:增:1.给新增字段设置默认值addr = models.CharField(max_length=32,default='China')2.给新增字段设置为空age = models.IntegerField(null=True)  # 该字段允许为空删:在models中注释掉 该字段  然后执行更新命令注:1.执行完后该字段对应的所有数据全部删除2.不会用到真正意义上的删除(*******)慎用对数据的增删改查:查:先到models模块 from app01 import models查的方式:1.models.User.objects.all()2.models.User.objects.get(xxx=xxx)3.models.User.objects.filter(xxx=xxx)4.models.User.objects.filter(xxx=xxx).fist()注: 1.get方法 拿到数据对象本身,当查询条件不存在 会直接报错  不推荐用2.filter方法 得到一个列表,列表内是数据对象本身,当查询条件不存在 不会会报错,会返回一个空列表;filter中支持多个参数,参数间是and关系3.all方法 查全部数据 得到一个queryset对象 可以直接点query查看年内部对应的sql语句queryset对象  可以当成一个列表来操作,支持索引(只支持正数索引不支持负的),支持切片(切出来的是新的queryset对象)4.filter().fist  拿到列表中第一个数据对象   推荐用这个重点:用索引取值,当列表中没数据时会报错;用first取值 虽然内部也是按照索引取值  但是没有数据 也不会报错 返回的是None  内部机制对其进行了优化增:方法1.models.User.objects.create(username=username,password=password)2.user_obj = models.User(username=username,password=password)user_obj.save()删:(从前端获取要删除数据的id,根据id删除)models.User.objects.filter(条件).delete()改:(查出要修改的数据,渲染到页面让用户修改,然后在传到后端进行修改)1. models.User.objects.filter(条件).update()2.edit_obj.username = usernameedit_obj.password = passwordedit_obj.save()注: 1.filter 拿到是一个列表 ,他属于批量操作,会一次性全部修改类似for循环2.会从头到尾将所有字段全部修改一遍,效率极低.

转载于:https://www.cnblogs.com/wyf20190411-/p/11531087.html

django 静态文件的配置 orm 中 字段与数据的增删改查 使用MySQL数据库相关推荐

  1. Django/静态文件/apps配置/模型/数据库/shell

    一.debug和basedir 1.debug 2.basedir 当前文件的上一级的上一级绝对路径:/root/PycharmProjects/bookmanage # Build paths in ...

  2. 实现对mysql增删改查_Java语言实现对MySql数据库中数据的增删改查操作的代码

    简单说操作的步骤: 1.连接数据库 2.将SQL语句发送到数据库 3.执行SQL语句 这里举个例子: 在一个数据库中有个students表,表中有学号(Id),姓名(Name),性别(Sex),地址( ...

  3. SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例

    SpringBoot+Mysql+MDUI实现数据的增删改查和列表操作及单,多文件上传实例 开源地址:https://gitee.com/jfkjrym/demo.git evan原创内容!evan原 ...

  4. doraemon的python(大更新) django静态文件的配置(出错多的地方)

    ### 12.2 静态文件的使用#### 12.2.1静态文件的配置和使用 settings.py```python STATIC_URL = '/static/' #别名 STATICFILES_D ...

  5. 各种 django 静态文件的配置总结【待续】

    2019独角兽企业重金招聘Python工程师标准>>> 最近在学习django框架的使用,想引用静态css文件,怎么都引用不到,从网搜了好多,大多因为版本问题, 和我现在的使用的da ...

  6. node-red mysql的增删改查_通过curl或者http请求对elasticsearch中的数据进行增删改查...

    最近学习elasticsearch的数据存储,整体语法还是比较规则的.可以使用浏览器.postman.命令行等进行操作. elasticsearch官网的解释最官方,请查看下面的地址 1. 查询当前集 ...

  7. C#的ASP.NET中关于OleDb连接数据库执行增删改查

    一句话解释C#调用数据库原理: 在Web.config文件里面配置相应的代码,然后写相应的oleDB数据库代码进行连接操作 web.config配置 <?xml version="1. ...

  8. mock模拟的数据能增删改查吗_如何在Vue中使用Mockjs模拟数据的增删查改

    之前一直使用json-server在前端开发时,搭建本地数据接口测试,但有时又需要将做好的项目放于 github page上做项目演示.在本地时,json server很好使用,但一旦放在github ...

  9. mysql修改字段默认值_MySQL增删改查操作

    增删改查操作 查询表中的所有的记录:select from 表名(xs) 创建数据库:create database if not exists xsgl; 8.2创建表:cerate table i ...

  10. MySQL对于表中数据的增删改查

    增删改查(curd) curd的解释: 代表创建(Create).更新(Update).读取(Retrieve)和删除(Delete) 查询基本使用 查询所有列(表中所有字段) select * fr ...

最新文章

  1. 在线实时大数据平台Storm版本兼容的问题
  2. esp8266设置sta失败_使用NodeMCU_ESP8266驱动OLED
  3. KaleidoscopeGame
  4. 资源 | Deeplearning.ai课程与笔记汇总
  5. 前端学习(1700):前端系列javascript之作用域和自由变量
  6. DPVS_吊打面试官的项目——DPVS
  7. mongodb分片部署
  8. php get_magic_quotes_gpc()
  9. python一对一视频教学-问Python,一对一直播开发需要推流器吗?
  10. yolov5模型框架详解
  11. oracle中avl,AVL CRUISE软件功能简介
  12. JPG怎么批量转换成PDF
  13. c语言常量定义的数组初始化
  14. GBDT梯度提升之二分类算法个人理解
  15. 从哲学的视角看待项目生命周期——构建不一样的世界
  16. DCD、DTR、DSR、RTS及CTS等五个状态指示分别代表什么意思?
  17. 不是python文件操作的相关函数_从零开始学Python(七):文件存储I/O流和异常捕捉
  18. 《C++ 黑客编程揭秘与防范(第2版)》——6.2 详解PE文件结构
  19. 操作系统-------用P,V操作解决生产者和消费者问题(详解!!!)
  20. 在IDEA中写Python

热门文章

  1. Docker 开篇 1 | 树莓派中搭建Docker
  2. mysqlbinlog结合sed命令恢复update时未加where条件之前的数据
  3. 阿里巴巴举办全球数学竞赛 助力基础科学杰出人才培养
  4. 拇指接龙游戏从WIN32向Android移植过程问题记录(1)
  5. nagios无法通过web访问
  6. JavaScript字符串split方法
  7. 30岁前,一定要完成哪些人生规划?
  8. Linux Kernel 5.0 近日正式面向公众
  9. 互联网的职场红利已经没了
  10. rpm 安装 mysql5.6.28_Linux(Ubuntu)下Mysql5.6.28安装配置方法图文教程