【无标题】

本文介绍了Django中处理多对多关系的步骤,包括在模型中使用ManyToManyField,通过视图展示数据,以及配置路由。示例代码展示了如何查询和显示多对多关联的数据,同时强调了在多对多关系中删除或修改数据不会影响关联表的特点。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

django多对多查询


前言

提示:这里可以添加本文要记录的大概内容:

生活中,多对多关系:一个乐队可以有很多音乐家,一个音乐家也可以隶属好多个乐队一个文章中可以有很多标签,一个标签也可出现在很多文章中在多对多关系中专门有第三张表来存储对应关系,表本身之间没有任何关联,此时删除和修改数据不影响另外一张表from


提示:以下是本篇文章正文内容,下面案例可供参考

一、多对多关系是什么?

多对多关系在模型中使用ManyToManyField字段定义

二、使用步骤

1.模型类

代码如下(示例):

class Biao(models.Model):
    name=models.CharField(max_length=10,verbose_name='标签名')
    class Meta:
        db_table='biao'
    def __str__(self):
            return self.name

class Wen(models.Model):
    name1=models.CharField(max_length=10,verbose_name='文件标题')
    auu=models.ManyToManyField(Biao)
    class Meta:
        db_table='wen'
    def __str__(self):
            return self.name1

2.视图

	class Ao(View):
    def get(self,request,pk):
        dict=models.Biao.objects.filter(wen=pk)
        return  render(request,'biaoqian5555.html',locals())

class Bo(View):
    def get(self,request):
        dict1=models.Wen.objects.all()
        return  render(request,'wenzhang666.html',locals())

3.配置路由

代码如下(示例):


    path('ao/<int:pk>',views.Ao.as_view()),
    path('bo/',views.Bo.as_view()),

---


# 在多对多的情况,有专门的第三张表,存储 对应关系, 表本身并没有字段来存储对应关系,此时删除任意数据,不影响另一张表数据
---

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值