Django:models查询和前后端交互

django-model查询语句:

基本操作:
获取所有数据: User.objects.all()
对应SQL语句:select * from User

匹配查询数据: User.objects.filter(条件 = '条件' )    条件可以有N个,以逗号分隔
	对应SQL语句:select * from User where 条件 = "条件"

不匹配查询语句: User.objects.exclude(条件='条件')
	对应SQL语句:select * from User where 条件 != "条件"

获取单条数据:User.objects.get(id=123)
	对应SQL语句:select * from User where id = 123

获取第一条数据:
	User.objects.filter(条件).first()

外键:ForeignKey:

    一对多:  一.多_set.all()
	多查一:  多.一.一的字段

多对多查询
	两边都是
	多.多_set.all()

表结构:在这里插入图片描述
正向查询:
在这里插入图片描述
反向查询:在这里插入图片描述
另一种反向查询的方法:在这里插入图片描述

ManyToManyField:

在这里插入图片描述
在这里插入图片描述
常用操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进阶操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

前后端交互方法:

后端查询
通过locals或者{“key”:“value”}写到response传递到前端

前端使用标签进行调用
{% for %}
{% if %}
{{ 变量 }}
结构:

{{ }} 双大括号包括起来的是变量

{% %} 模式是块,可以用if和for之类的语句进行遍历

| 括号中的值末尾加“|”,可以使用筛选器,筛选结果

直接在html文件的几乎任意位置使用,在页面被context(一会说)渲染的时候,便会被所渲染的值替代。

思路:把你想要的值(无论是数组、整形、字符串、字典还是别的什么混合结构),用 {{ 名称}} 的格式返回给JS代码中的某个变量,然后就可以自由自在的运用它了。

示例:

1.使用ajax方法向url "mysite/foobar/"发送请求

2.当访问url “mysite/foobar/” 的时候,调用Views里的函数 foobar,采用某个函数,返回我们要的字典 data={‘foo’:‘bar’} 到前端

3.在前端的html页面中的

猜你喜欢

转载自blog.csdn.net/weixin_43582101/article/details/86531364
今日推荐