问题标签 [modeladmin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
15 回答
200444 浏览

python - Django ModelAdmin 中的“list_display”可以显示 ForeignKey 字段的属性吗?

我有一个Person与 具有外键关系的模型Book,它有许多字段,但我最关心的是author(一个标准的 CharField)。

话虽如此,在我的PersonAdmin模型中,我想显示book.author使用list_display

我已经尝试了所有明显的方法,但似乎没有任何效果。

有什么建议么?

0 投票
3 回答
26660 浏览

django - Django:从 ModelAdmin 中访问模型实例?

我有一个网上商店应用程序中的订单模型,具有自动递增的主键和自身的外键,因为订单可以拆分为多个订单,但必须保持与原始订单的关系。

我已经为管理站点注册了一个 OrderAdmin 类。对于详细视图,我已包含parent_orderfieldsets属性中。当然,默认情况下,这会在选择框中列出所有订单,但这不是所需的行为。相反,对于没有父订单的订单(即未从另一个订单拆分;parent_order为 NULL/None),不应显示任何订单。对于已拆分的订单,这应该只显示单父订单。

有一个相当新的 ModelAdmin 方法可用,formfield_for_foreignkey这似乎非常适合,因为可以在其中过滤查询集。假设我们正在查看订单#11234 的详细视图,该订单已从订单#11208 中拆分出来。代码如下

注释行在 Python shell 中运行时有效,返回一个单项查询集,其中包含订单 #11208 和 #11234 以及可能已从中拆分的所有其他订单。

当然,我们不能在那里对订单号进行硬编码。我们需要一个对ordernumber我们正在查看其详细信息页面的订单实例的字段的引用。像这样:

我发现没有可行的方法来替换??????参考“当前” Order 实例,我已经深入挖掘了。selfinsideformfield_for_foreignkey指的是 ModelAdmin 实例,虽然它确实有一个model属性,但它不是订单模型实例(它是一个 ModelBase 引用;self.model() 返回一个实例,但它的 ordernumber 是 None)。

一种解决方案可能是从 request.path (/admin/orders/order/11234/) 中提取订单号,但这真的很难看。我真的希望有更好的方法。

0 投票
2 回答
3051 浏览

django - 未调用 ModelAdmin.save_model 的覆盖

我正在使用 GenerickStackedInline,它是 InlineModelAdmin 的一个子类,用于 ModelAdmin。当我覆盖 save_model 方法时......它没有被调用。

所以,我错过了什么?

有什么线索吗?

问候

0 投票
13 回答
36582 浏览

python - 禁用链接以在 django 的管理员中编辑对象(仅显示列表)?

在 Django 的管理员中,我想禁用“选择要更改的项目”页面上提供的链接,以便用户无法去任何地方编辑该项目。(我将把用户可以用这个列表做的事情限制在一组下拉操作中——没有实际的字段编辑)。

我看到 Django 有能力选择哪些字段显示链接,但是,我看不出我怎么能没有它们。

任何想法如何在没有任何编辑链接的情况下获取我的对象列表?

0 投票
3 回答
1088 浏览

django - Django 管理员:如何将不相关的模型字段添加到模型更改/添加页面?

我有以下型号:

在管理员中,我想要它以便在 Foo 更改/添加页面中,您可以指定一个 Bar 对象,并且在保存时我想创建一个 Foo_bar 对象来表示关系。如何通过自定义管理站点/ModelAdmins 来做到这一点?请注意,内联并不是我所需要的,因为 foo 和 bar 之间没有明确的外键关系。其次,我实际上并不想编辑条形对象,我只想从系统中的对象中进行选择。

谢谢。

0 投票
6 回答
23228 浏览

django - django admin中的更改列表显示链接

我正在尝试更改 django 管理列表显示中对象的链接。这是我到目前为止所拥有的:

这会在原始列表显示链接中产生另一个链接,例如

0 投票
2 回答
722 浏览

python - 1.2.x 中的 Django ManyToMany 内联排序

我正在使用 Django 1.2 的新 ManyToMany admin.TabularInline 在管理应用程序中显示相关对象,它工作得很好,除了我无法弄清楚将“ordering”属性设置为什么以便它可以按其中一个排序交叉引用的字段名称。

例如:

我怎样才能到达 Foo.name 字段以在内联中对其进行排序?

0 投票
2 回答
2358 浏览

python - 将派生字段添加到 Django 管理员更改表单

我想通过指定一个方法并将其添加到 ModelAdmin.list_display 属性来将派生字段添加到默认 ModelAdmin.fieldsets 中,但似乎没有一种简单的方法可以做到这一点(如果有任何方式来做到这一点)。

默认的 Django Admin 列表视图似乎比更改表单视图有更多的选项。

假设我有两个位置字段:纬度和经度,我不想在更改表单上显示它们,而是想显示谷歌地图静态地图图像 - 我已经有一个方法可以返回图像的 src url -我只需要一种方法将该图像添加到模型更改表单中,而不是显示这两个字段。

0 投票
2 回答
1547 浏览

django - 在 Django 中区分用于添加/更改页面的 ModelAdmin 媒体

为了在 Django admin 中封装自定义功能,我提供了一个实际上如下所示的自定义ModelAdmin

我注意到它my_code.js会在添加和更改页面中加载,但我只需要在添加页面中加载它。是否可以这样做(以及如何)?

0 投票
1 回答
4922 浏览

django - ModelAdmin 排序?

使用 Django Admin 界面,如何确保 HTML select multiple 中的对象按某种顺序排序(首选字母顺序)?问题是我有 3 个模型 - CD、歌曲、歌手。在 CD 管理仪表板之一中,Song 内嵌到 CD 中,而 Singer 是我想要排序的多对多字段!

我的model.py文件:

我的admin.py文件: