问题标签 [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 投票
1 回答
628 浏览

permissions - 有没有办法让 wagtail modeladmin 中每个用户的数据可见?

我在 wagtail admin ModelAdmin 中添加了一个家谱管理器,结构是这样的:

因此,我需要确保每个家谱和个人(家谱的成员)仅对输入数据的用户(和管理员)可用。

这是我第一次使用 wagtail,我刚刚阅读了文档,但欢迎任何建议:)

0 投票
0 回答
80 浏览

silverstripe - ModelAdmin - 您可以将子选项卡添加到托管模型视图吗?

银条3

我有一个带有四个托管模型的 ModelAdmin 设置。当您通过单击左侧菜单加载 ModelAdmin 时,您会看到每个托管模型在最顶部的选项卡行中分开。

对于其中一个托管模型,我希望子选项卡行显示托管模型数据子集的单独网格字段。注意我不是想向模型本身添加子选项卡。我知道可以使用 getCMSFields 和 addFieldsToTab 来实现。

在用户单击模型的实际实例之前,是否有等效于在托管模型视图上执行此操作的方法?

编辑:我刚刚想到的替代解决方案 - 能够在“内容”、“相关页面”和“设置”旁边的页面中添加一个新的顶级选项卡。

0 投票
1 回答
356 浏览

python - 如何从 Wagtail modeladmin 中的 HelpPanel 访问实例?

在 Wagtail 项目中的 Django 模型中,该模型连接为 modeladmin 实例,我想从以下实例中访问数据HelpPanel

但是使用上面的代码,我得到一个“未定义自我”:

面板定义中的self似乎不是self我想在这里使用的模型实例。

任何想法如何从这个HelpPanel定义中的绑定模型实例访问数据?

0 投票
1 回答
719 浏览

django - Wagtail ModelAdmin中的过滤查询集不起作用

我有一个菜单项,其中包含 4 种资源,每种语言,如果用户转到 EnResources,我希望它只显示语言字段包含“en”的资源,并且与其他语言相同。所以问题是它只得到 en 项目,无论我选择哪个菜单项,它总是 en 项目,而不是 FrResources 或任何东西。

我正在关注文档http://docs.wagtail.io/en/v2.5.1/reference/contrib/modeladmin/indexview.html#modeladmin-get-queryset

模型.py

常量.py

鹡鸰钩.py

编辑:我开始做更多的研究,我发现根据 default_manager 上的 Django 文档。 https://docs.djangoproject.com/en/2.2/topics/db/managers/#django.db.models.Model._default_manager

如果您使用自定义 Manager 对象,请注意 Django 遇到的第一个 Manager (按照它们在模型中定义的顺序)具有特殊状态。Django 将类中定义的第一个管理器解释为“默认”管理器,Django 的几个部分(包括转储数据)将专门为该模型使用该管理器。因此,在选择默认管理器时要小心谨慎,以避免覆盖 get_queryset() 导致无法检索您想要使用的对象的情况。

您可以使用 Meta.default_manager_name 指定自定义默认管理器。

如果您正在编写一些必须处理未知模型的代码,例如,在实现通用视图的第三方应用程序中,请使用此管理器(或 _base_manager),而不是假设模型具有对象管理器。

注意第一段的最后一部分。我认为这正是这里正在发生的事情。

0 投票
0 回答
35 浏览

python - 如何在 admin.py 中使用带有部分模板的字段集?

在 admin.py 中,我使用字段集在更改视图中显示我的字段。我想继续使用字段集,但还要添加一个部分 html 模板,该模板在同一视图上呈现可编辑的表。

我查看了 django 文档,但我无法找到一种方法来包含两个字段集并添加模板 https://docs.djangoproject.com/en/2.2/ref/contrib/admin/#modeladmin-对象

0 投票
1 回答
435 浏览

django - 如何限制 ForeignKey/ManyToMany Wagtail ModelAdmin 字段中显示的项目?

我想限制管理员中显示ManyToManyField的用户数量。Wagtail

django版本中ModelAdmin,实现以下功能就足够了:

有没有办法Wagtail限制ManyToManyFields 中显示的值?

0 投票
2 回答
421 浏览

wagtail - 在 wagtail 管理中添加子菜单

Wagtail 是美妙的 CMS。我确实有一个问题如何在管理员中添加子菜单。我有一个自定义模型位置在那个模型中我有 2 个外键。要管理通过 modeladmin 创建的位置模型,请使用菜单。但是,要管理城市或外键内容,我还需要在 modeladmin 中创建。

我只在 modeladmin 中看到一个将项目添加到设置菜单的选项。我在管理员中需要的是以下内容

目前我只能通过 menu_order=200 确定订单

有没有办法让 wagtail 中的导航具有子导航

0 投票
0 回答
357 浏览

django - Django 在扩展类中使用 __init__ 方法(​​admin.ModelAdmin)

我对 Django 很陌生。

我有一个admin.Models非常典型的扩展类(有list_displaysearch_fields等)。

它看起来像这样:

我的问题是,这ModelAdmin会从具有类似foo_list = Foo.objects.filter(group__name='something').

因为这是一项繁重的任务,我想在初始化时做一次,然后在指定自定义"_field"函数时一遍又一遍地使用相同的东西。

我的想法是在__init__这个类的方法中执行此操作,但是当实现我自己的构造函数时,它不会向 Django 注册为 url;IE

以上将正确“构建”并运行,但尝试访问该站点时说找不到 URL(这并不奇怪,因为我删除了注册部分)。

但是,当我重新添加寄存器部分时,我收到一条关于滥用构造函数的消息,即添加回admin.site.register并运行python manage.py runserver ...结果如下:

我已经从多个 示例 使用了这个构造函数,但无济于事 所以我不确定这是否是 Django 版本控制的事情。

我的问题是:

  1. 如何在admin.ModelAdmin扩展类中使用初始化方法或某种“生命周期挂钩”?
  2. 为什么在注册 URL 时实现了我的构造函数会破坏构造函数接口?

这是我的环境:

0 投票
0 回答
211 浏览

python - 如何自定义页面类型模型的 IndexView - Wagtail Admin 中的列表视图

我在 wagtail 中有多种类型的页面模型,带有父页面和子页面层次结构。我想自定义索引视图或列表视图,以在 Wagtail 管理员的主仪表板页面下的所有页面中添加更多字段。

页面默认注册为在 wagtail admin 中显示,我可以编写一个方法来覆盖要在索引视图中显示的字段列表,还是有办法覆盖页面类型的 ModelAdmin 并使用 list_display 添加更多字段?

0 投票
1 回答
320 浏览

wagtail - Wagtail:如何在管理员中设置计算字段(@property)标题

我在 Wagtail 中为我的模型使用 ModelAdmin 模块。我在模型中有@property 字段,我在其中返回一些带注释的数据并在管理员中显示它的索引和检查视图。但是 Wagtail 在模型中将这些字段的标题设置为字段名称。在常规字段中,我使用 verbose_name 设置好标题,如何更改属性字段的标题?