首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django admin以多对多关系显示表中的所有记录,而不是相关字段

Django admin是Django框架提供的一个强大的后台管理工具,用于管理和操作数据库中的数据。在Django admin中,可以通过定义模型类和注册管理类来实现对数据库表的增删改查操作。

对于多对多关系的表,Django admin默认情况下只会显示相关字段的ID,而不是显示所有记录。如果想要在Django admin中显示多对多关系表的所有记录,可以通过以下步骤实现:

  1. 在Django的模型类中定义多对多关系字段,并设置related_name属性,以便在后续的步骤中使用。
代码语言:txt
复制
from django.db import models

class TableA(models.Model):
    name = models.CharField(max_length=50)

class TableB(models.Model):
    name = models.CharField(max_length=50)
    table_a = models.ManyToManyField(TableA, related_name='table_b')
  1. 在Django的admin.py文件中注册模型类,并自定义管理类。
代码语言:txt
复制
from django.contrib import admin
from .models import TableA, TableB

class TableBInline(admin.TabularInline):
    model = TableB.table_a.through
    extra = 0

@admin.register(TableA)
class TableAAdmin(admin.ModelAdmin):
    inlines = [TableBInline]
  1. 在自定义的管理类中使用TabularInline类来定义内联关系,将多对多关系的表作为内联表格显示。

通过以上步骤,就可以在Django admin中以多对多关系显示表中的所有记录了。在TableA的管理页面中,会显示与之相关的TableB表的所有记录,并且可以进行增删改查等操作。

对于腾讯云相关产品的推荐,可以考虑使用腾讯云的云服务器(CVM)来部署Django应用,使用云数据库MySQL来存储数据,使用云存储COS来存储多媒体文件,使用云安全中心来提供网络安全保障。具体产品介绍和链接如下:

  • 腾讯云服务器(CVM):提供高性能、可扩展的云服务器实例,适用于各种规模的应用部署。产品介绍链接
  • 云数据库MySQL:提供稳定可靠的云数据库服务,支持高可用、可扩展、自动备份等特性。产品介绍链接
  • 云存储COS:提供安全可靠、低成本的云存储服务,适用于存储和处理各种类型的文件和数据。产品介绍链接
  • 云安全中心:提供全面的云安全解决方案,包括DDoS防护、Web应用防火墙、安全审计等功能,保障应用的网络安全。产品介绍链接

以上是关于Django admin以多对多关系显示表中的所有记录的完善且全面的答案,希望能对您有所帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Django之Model操作数据库详解

Django ORM框架功能: 建立模型类和之间对应关系,允许我们通过面向对象方式来操作数据库。 根据设计模型类生成数据库表格。 通过方便配置就可以进行数据库切换。...Admin显示字段名称 blank Admin是否允许用户输入为空 editable Admin是否可以编辑 help_text...Admin字段提示信息 choices Admin显示选择框内容,用不变动数据放在内存从而避免跨操作 如:gf = models.IntegerField...显示名称 verbose_name # verbose_name加s verbose_name_plural 七、关系字段...,使用字段用于指定关系 through_fields=None, # 自定义第三张时,使用字段用于指定关系那些字段关系

7K10

【Python全栈100天学习笔记】Day41 Django深入理解框架

在实际项目中,数据模型通常通过数据库实现持久化操作,关系型数据库在过去和当下都是持久化首选方案,下面我们MySQL为例来说明如何使用关系型数据库来实现持久化操作。...> 说明1:由于员工与部门之间存在一外键关联,所以也能通过部门反向查询该部门员工(从一关系“一”一方查询“一方),反向查询属性默认名字是类名小写_set(如上面例子emp_set...用DecimalField来存储货币相关数据不是FloatField。 定义__str__方法。 不要将数据文件放在同一个目录。...ManyToManyField属性 symmetrical:是否建立对称关系。 through:指定维持关系中间Django模型。...throughfields:定义了中间模型时可以指定建立关系字段。 db_table:指定维持关系中间名。

2.2K30

Django之ORM数据库

并提供了一个简介漂亮定义数据库字段语法。          每个模型相当于单个数据库关系例外,会生成一张关系),每个属性也是这个字段。...(如何处理外键关系字段如一publisher和authors) #一(ForeignKey): #方式一: 由于绑定一字段,比如publish,存到数据库字段名叫...Book_authors中有两条相关信息,这种删除方式就是django默认级联删除。...__city或者author__namepublisher,author是book绑定字段 #一多在这里用法没区别 # 反向查找(条件) #反向查找之一:...__titlebook是名Book #一多在这里用法没区别 注意:条件查询即与对象查询对应,是指在filter,values等方法通过__来明确查询条件。

2.5K10

Django项目知识点(三)

default 默认值 verbose_name   Admin字段显示名称,如果不设置该参数时,则与属性名。...一:当一张创建一行数据时,有一个单选下拉框(可以被重复选择) 一个学院信息有多个学生信息 再比如文章和作者之间关系。一个文章只能由一个作者编写,但是一个作者可以写篇文章。...文章和作者之间关系就是典型关系。作者和文章关系就是一:在某创建一行数据是,有一个可以多选下拉框 不同学生有不同课程 再比如文章和标签关系。...因此标签和文章关系是典型关系。...一般使用CASCADE 表示级联删除 也就是有一个数据其中一个删了,管聊就会删除,想下如果有个学生不读了,删掉了所有学生报名表数据,它绑外键学生,课程,是不是先把它删了,这就是级联删除,如果设置了

1.8K30

Django ORM

不用直接使用sql语言; python与MySQL映射关系 Python 映射 MySQL 类 -------> 对象 -------> 表里面的数据 对象点属性 -------> 字段对应值...之间关系有一下三种: 一、一一,没关系暂且排外,下面演示如何通过ORM来创建外键确立关系~ ORM创建外键字段位置: 一:创建在一方 一堆一:创建在任何一方都可以...,但是推荐创建在查询频率较高 (两种方式): 自己创建第三张 创建在任何一方都可以,但是推荐创建在查询频率较高 # 创建书籍 出版者 作者 # 先写基本结构,在考虑关系如何写外键...,只有关系被单独创建出来 Django请求生命周期流程图 路由匹配 路由:通俗理解为除去ip和port之后地址 在新版本Django2.x,url路由表示用path和re_path代替...,不是圆括号; 匹配模式最开头不需要添加斜杠/,但建议斜杠结尾; 使用re_path时不一定总是以结尾,有时不能加。

4K10

DjangoORM介绍和字段及其参数

ORM优势   ORM解决主要问题是对象和关系映射。 类和数据库对应; 类每个实例对应一条记录; 类每个属性对应每个字段。...关系字段 ForeignKey   外键类型在ORM中用来表示外键关联关系,一般把ForeignKey字段设置在 '一'''一方。   ...ManyToManyField 用于表示关联关系。在数据库通过第三张来建立关联关系。...through: 在使用ManyToManyField字段时,Django将自动生成一张来管理关联关系。...,在哪里设置关系,那个相关类对应第三张字段就在前面,剩下在后面 class Girl(models.Model): name = models.CharField(max_length

2.8K80

Python Day16 Django

在更高层与处理Django 模型实例相关代码:使用get_absolute_url() 方法。...一关系:关联字段 关系:创建关系 增删操作举例 增 .add 增加 book_obj.author.add(1, 2, 3) book_obj.author.add(*[1, 2,...其中出版社书籍是一关系,使用如下语句创建关联字段 publish=Foreignkey(to="Publish",to_field="") ---- 作者与书籍之间是关系,这就需要创建关系...这个字段是桥梁作用,通过它与Author产生关系,从而创建关系app01_book_author ---- 注意了: Book里这个author只是这个类属性,在最终生成数据库并没有这个字段...) # 绑定书籍与作者关系,列表前面加个*等于把所有内容都传过去,不用自己写for循环, 会自动save obj.author.add(*author_id_list

1.9K10

Django admin 一些有用设置

一般ManyToManyField字段用过滤器;标题等文本字段用搜索框;日期时间用分层筛选。 过滤器如果是外键需要遵循这样语法:本表字段__外键显示字段。...):     list_display = ('first_name', 'last_name', 'colored_name') 实际代码(注意看上面代码,是写在models里,不是admin...这样字段操作更方便。 另外,可以用fields或exclude控制显示或者排除字段,二选一即可。 例如,我想只显示标题、作者、分类标签、内容。...9.自定义列表字段 上面的一可以数据编辑显示,但在列表没有显示。有时还需要显示一些其他东西。例如两个字段相乘计算结果等等。这些都可以通过自定义列表字段处理和显示。...关系。简单模型代码如下: ?

2.5K70

Django】 开发:数据库操作和后台管理

__gt=65) auths.delete() 聚合查询 聚合查询是指一个数据一个字段数据进行部分或全部进行统计查询,查bookstore_book数据全部书平均价格,查询所有总个数等.../book/ 查看显示方式和以前有所不同 模型管理器类 ModelAdmin 实现高级管理功能 list_display 去控制哪些字段显示Admin 修改列表页面。...3. verbose_name_plural = '复数名' - 该对象复数形式名称(复数),用于显示在/admin管理界面 数据关联关系映射 常用关联方式有三种...) except: print(author2.name, '还没有妻子') 一映射 一多是表示现实事物间存在对应关系。...("清华大学出版社书有:") for book in books: print(book.title) 映射 多表达对象之间复杂关系,如: 每个人都有不同学校(小学,初中,高中

4K40

DjangoORM操作

) book_obj.save() 如果两之间存在双向1N关系,就无法使用外键来描述其关系了; 只能使用方式,新增第三张关系描述; book=models.Book.objects.get..., 切记:如果两之间存在关系,例如书籍相关所有作者对象集合,作者也关联所有书籍对象集合 book=models.Book.objects.get(title='西游记')...我们在学习djangoorm时候,我们可以把一,分为正向和反向查找两种方式。...方式反向跨:小写名__关联表字段 通过对象形式反向跨:小写名_set().all() 1 如果A1条记录对应BN条记录成立,两之间就是1关系;在1关系...A就是主表,B为子表,ForeignKey字段就建在子表; 如果B1条记录也对应AN条记录,两之间就是双向1关系,也称为关系; 在orm设置如果 A设置了外键字段user=

4.7K10

Django实战-信息资讯-CMS权限管理

Django 权限permission 本质是 djang.contrib.auth 一个模型, 其与 User user_permissions 字段关系。...,可以追踪项目中所有app和model对应关系,并记录在ContentType。...② Group 用户组 from django.contrib.auth.models import Group 用户组(Group)和 User 模型是关系。...其作用在权限控制时可以批量用户权限进行管理和分配,不用一个一个用户分配,节省工作量。将一个用户加入到一个Group后,该用户就拥有了该Group所分配所有权限。...User 对象中有一个名为 groups 字段关系由 auth_user_groups数据维护。Group 对象可以通过 user_set 反向查询用户组用户。

96710

【云+社区年度正文】Django从入门到精通No.2----模型

(字典类型) validators:自定义错误验证(列表类型) 注:数据参考来源w3cschool 四、关联关系 django提供了三种数据库关联关系,即一,一一,,废话不多说,就是干。...db_constraint=True # 是否在数据库创建外键约束 parent_link=False # 在Admin是否显示关联数据 2. ...,你可以指定一个中介模型来定义关系,可以将其它字段放在中介模型,源模型字段使用through参数指向中介模型。...# 在Admin或ModelForm显示关联数据时,提供条件,字典类型 symmetrical=None # 仅用于自关联时,用于指定内部是否创建反向操作字段,...,使用字段用于指定关系那些字段关系 db_constraint=True # 是否在数据库创建外键约束 db_table=None

2.1K00

PythonWeb框架之Django

多表操作 创建模型 之间关系     一一、一、 ,用book和publish自己来想想关系,想想里面的操作,加外键约束和不加外键约束区别,一外键约束是在一约束上加上唯一约束...,mysql时候是怎么建立,是不是手动创建一个第三张,然后写上两个字段,每个字段外键关联到另外两张关系,ormmanytomany自动帮我们创建第三张,两种方式建立关系都可以,以后学习我们暂时用...与Author建立关系,ManyToManyField可以建在两个模型任意一个,自动创建第三张, # 并且注意一点,你查看book时候,你看不到这个字段,因为这个字段就是创建第三张意思...创建一关系字段一些参数 相关字段 参数: to 设置要关联 related_name 同ForeignKey字段。...# 咱们表里面包含了一一、一关系,我们基于这几个来练习,将来无论有多少张,都逃脱不了这三个关系,操作起来都是一样

2.5K50

Python全栈开发之Django基础

) admin.site.register(HeroInfo) 自定义管理界面 # app01/admin.py,list_display表示要显示字段 from django.contrib import...,但是不支持负数 list = BookInfo.objects.all()[0:2] 关联 关系字段类型 ForeignKey:一,将字段定义在一端 ManyToManyField:,...将字段定义在任意一端 OneToOneField:一一,将字段定义在任意一端 可以维护递归关联关系,使用'self'指定,详见"自关联" 一 一本图书中可以对应多个英雄,所以图书和英雄是一关系...一端对象.多端类名_set b = BookInfo.objects.get(id=1) b.HeroInfo_set.all() 由访问语法 多端模型对象.多端模型类关系字段 h...如果想防止CSRF,首先是重要信息传递都采用POST方式不是GET方式 防止CSRF Django提供了csrf中间件用于防止CSRF***,只需要在mysite/settings.py启用csrf

3.7K20

35.Django2.0文档

在这个模式, Model 代表数据存取层,View 代表是系统中选择显示什么和怎么显示部分,Controller 指的是系统根据用户输入并视需要访问模型,决定使用哪个视图那部分。      ...该层处理与数据相关所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间关系等    T:代表模板(Template),即表现层。...它有一个或多个作者(和作者是关联关系[many-to-many]), 只有一个出版商(和出版商是一关联关系[one-to-many],也被称作外          键[foreign key...另一个常用编辑页面自定义是针对字段。 真如我们在book编辑页面看到那样,`` 字段`` 被展现成多选框。虽然多选框在逻辑上是最适合HTML控件,但它却不那么好用。...但是,正如`` 字段`` 那样,有时候你不想忍受因装载并显示这些选项产生大量开销。

11.2K100

Python进阶29-ORM介绍

添加表记录 基于对象查询 一一查询 一查询 查询 连续跨 打印Django查询数据SQL语句 基于双下划线查询 聚合查询 分组查询 F查询... 图书管理系统多表设计: 图书--->出版社---->一关系一旦确立,关联字段写在一方 图书--->作者----...一关联关系多用在当一张不同字段查询频次差距过大情况下,将本可以存储在一张字段拆开放置在两张,然后将两张建立一关联关系。...through 在使用ManyToManyField字段时,Django将自动生成一张来管理关联关系。...但是当我们使用第三种方式创建多关联关系时,就无法使用set、add、remove、clear方法来管理关系了,需要通过第三张model来管理关系

4.3K10

关于python开发CRM系统

,造成信息不能同步和共享 客户信息没有记录和跟进信息 会造成抢单问题 无法统计成单率和报表 没有和客户沟通记录 客户信息,唯一客户端ID 一跟进记录 客户状态,报名和未报名 客户来源分析 学员报名信息...import User 然后在用户信息,通过和adminuser建立一关系,从而实现认证功能 class UserProfile(models.Model): '''...通过通过在js获取当前url也就是’{{request.path}}’ 关于djangoadmin自定制功能 在djangoadmin可以自定义显示字段内容,需要在admin.py配置文件做如下配置...","status","date") 在admin.py创建类,并且让继承admin.ModelAdmin list_display表示要显示字段,将要显示字段在后面列出,这样在前端页面就可以看到...django登录admin时候显示如上图,会显示所有的app名字,并且在每个app下会显示该app所有名 这里有几个知识点需要注意: 关于如何获取所有的app 所有注册app都会在sttings

3.2K90

Django 1.10文文档-第一个应用Part2-模型和管理站点

Field还可以有各种可选参数;在上例,我们将votes默认值设置为0。 最后,使用ForeignKey定义关系。这告诉Django每个选择是与单个问题相关。...Django支持所有常见数据库关系一,和一一。 激活模型 上面那段简短模型代码给了Django很多信息。...>>> q = Question.objects.get(pk=1) # 显示所有与q对象有关系choice集合,目前是空,还没有任何关联对象。...点击“Questions”,进入questions修改列表页面。这个页面会显示所有的数据库内questions对象,你可以在这里它们进行修改。看到下面的“What’s up?”了么?...它就是我们先前创建一个question,并且通过str方法帮助,显示了较为直观信息,不是一个冷冰冰对象类型名称。 ? 点击What’s up?进入编辑界面: ?

2.2K60

Django-models & QuerySet API

django配置mysql数据库 查询queryset时如果需要选取查询集中某个子集字段时, 应该用切片,或者first 选择某个子集对象,这样才能够使用到 子集字段,直接queryset后选择字段会直接报错...一是在INSTALLED_APPS里面加入app名称; 二是配置数据库相关信息 View Code 定义数据库结构  models.py 使用orm框架,不需要编写原生sql语句 from django.db...   默认都可以修改,如果为false,admin上面不可修改且不显示,但是数据库可以改 error_messages   自定义错误信息,是字典类型 help_text   该字段提示信息 unique...列表里元素是字典,不是queryset对象列表。...(补充)关系字段 一    ForeignKey    ManyToManyField 例如:学生跟老师是关系,学生跟学校是关系: vim models.py models.ForeignKey

1.4K20

37.Django1.11.6文档

例如,如果所有者可以拥有多个汽车,并且汽车可以属于多个所有者 - 关系,则您可以过滤Car外键字段,仅显示由User: class MyModelAdmin(admin.ModelAdmin):...through属性是管理关系模型引用。 在定义字段时,此模型由Django自动创建。 其次,GroupAdmin必须手动排除members字段。 ...Django在定义关系(在这种情况下,Group)模型上显示字段管理窗口小部件。 ...如果要使用内联模型来表示关系,则必须告知Django管理员不是显示此窗口小部件 - 否则您最终会在管理页面上看到两个窗口小部件,用于管理关系。...这是因为,就管理而言,through只是一个具有两个外键字段不是关系模型。 在所有其他方面,InlineModelAdmin与任何其他方面完全相同。

24.2K80
领券