You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django教程:如何在外键反向关系中使用内联

在Django后台实现Mundo到Tipo_mundo的反向内联关联

没问题,这事儿在Django admin里实现起来很简单,咱们一步步来:

步骤1:编辑你的admin.py文件

首先打开应用下的admin.py,先导入需要的模型和Django admin模块:

from django.contrib import admin
from .models import Tipo_mundo, Mundo

步骤2:创建Mundo的内联类

我们需要定义一个内联类,用来在Tipo_mundo的后台页面里展示关联的Mundo实例。你可以选择两种内联布局:

  • TabularInline:表格形式,布局紧凑,适合字段少的模型
  • StackedInline:堆叠形式,每个实例占一行,适合字段多的模型

这里以TabularInline为例,代码如下:

class MundoInline(admin.TabularInline):
    model = Mundo
    # 指定关联的外键字段(Mundo里指向Tipo_mundo的外键是tipo_mundo)
    fk_name = 'tipo_mundo'
    # 设置额外显示的空表单数量,方便新增关联实例
    extra = 1
    # 可选:如果有需要,可以设置只读字段,比如不想让用户修改某个字段
    # readonly_fields = ('nome_mundo',)

步骤3:注册Tipo_mundo并关联内联类

最后,注册Tipo_mundo模型的时候,把刚才定义的内联类添加到inlines列表里:

@admin.register(Tipo_mundo)
class Tipo_mundoAdmin(admin.ModelAdmin):
    inlines = [MundoInline]
    # 可选:设置列表页显示的字段,方便管理
    list_display = ('nome_tipo_mundo', 'descricao_tipo_mundo')

效果验证

做完上面的操作后,启动Django服务器,进入后台管理页面:

  • 打开Tipo_mundo的详情页,你会在页面下方看到关联的Mundo实例的表单区域
  • 可以直接在这里新增、编辑、删除和当前Tipo_mundo关联的Mundo记录,不需要单独跳转到Mundo的管理页面

内容的提问来源于stack exchange,提问作者Ronaldo Silveira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 11:10:28