问题标签 [wagtail-admin]
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.
django - 显示不打算在 ModelAdmin 中编辑的字段
我有一个自定义联系表单,我为此创建了一个sent_time
字段,auto_now_add
以节省用户发送消息的时间。
我可以在管理面板的列表视图中列出所有信息,但是当我尝试输入特定消息时,我遇到了以下错误:
'sent_time' cannot be specified for GeneralContact model form as it is a non-editable field
我尝试ModelAdmin
在相同的错误结果中使字段只读
当然可以只显示,也许我在模型中做错了什么?
这是我用于联系模型的基本模型
实际使用的类是相当简单的,也许这里需要做一些事情来允许显示只读字段?
在列表视图中可以显示所有信息。在编辑视图中,理想情况下,有关消息和发件人的所有信息都将作为只读字段,并且管理员可以选择has_response
根据是否有人响应来更改值。
我可以通过什么方式实现这一目标?
更新
看到此问答后,我已将其更改auto_now_add
为属性django.utils.timezone.now
的默认值sent_time
,生活似乎更好,问题开始时的错误消失了,编辑视图完全加载。但是,现在所有字段都是可编辑的,这是不可取的。
查看ModelAdmin
Wagtail 提供的类,它似乎readonly_fields
不可用,可能只是同名 django 管理类的一个功能。所以我不确定在这里做什么。WagtailsHelpPanel
类型的输出是我正在寻找的,我有一个想法用它来显示数据,但我不确定它看起来像什么,甚至不确定它是如何完成的,因为我只是在学习 django 和鹡鸰。
更新 2
尝试使用HelpPanel
而不是FieldPanel
为了尝试显示值,但似乎HelpPanel
没有检索到属性的值。通过这些文档检查,我看到没有提到像 djangos 这样的东西readonly_field
,这证实了为什么我以前的一次尝试没有奏效,但我确实发现提到inspect_view_enabled
它以只读方式显示值,并且在尝试后看起来非常我多么想得到它,唉,没有什么是可编辑的,但我越来越接近了。
我想知道是否有一个好的解决方案是覆盖用于的视图或模板,GeneralContactAdmin
但不确定这是否只是为一个类输出一些文本的正确方法。
一个更简单的解决方案是保留检查视图并仅将其添加has_response
到编辑视图,但是两个视图,其中一个只是一个复选框,对于 UX 来说不是很好。
当然有更好的方法来解决这个问题?
python - 不能再在鹡鸰中保存页面
单击发布或保存草稿时,我收到此错误
wagtail.core.models.Page.DoesNotExist: Page matching query does not exist.
,这只发生在旧页面上,新创建的页面能够被创建和保存而没有任何错误
注意:尽管我没有覆盖保存方法,但新页面没有子页面但试图找出导致此错误的原因任何建议或提示都会非常有帮助谢谢
这里是追溯:
wagtail - 对于某些用户来说,Wagtail 管理页面加载速度非常慢(explorable_pages() 问题?)
我有一个大约有 4000 个页面的网站,它在其中大约 400 个页面上使用细粒度权限。对于访问 /admin/ 页面的某些用户,页面会在一秒钟左右加载。对于其他人,页面可能需要大约 5 分钟才能加载。
对代码进行分析和调试似乎表明关注的领域是wagtail\core\models.py
explorable_pages()
函数,特别是
线。至少对于我的数据,这似乎返回了超过 2000 个结果,每个结果重复了 6 或 7 次(返回每个权限类型的结果?)。只有大约 400 个不同的结果。
添加一个distinct()
改进的问题
将数字降低到 400 左右。我的页面加载时间现在约为 90 秒 - 不理想但更好。
以上是鹡鸰的真正问题还是我错过/不理解某些东西?
我可以做些什么来加快页面加载速度吗?是否以典型 wagtail 网站所期望的方式设置网站权限?
(请原谅我的无知,我可能使用了错误的术语 - 我是 Python/Django/Wagtail 的 Java 程序员新手)
python - Wagtail:将 BaseSetting 添加到 ModelAdminGroup
我正在尝试创建编辑 Wagtail 的管理界面和分组设置以使其更有意义。为此,我想在一个子菜单中混合 BaseSetting 和 ModelAdmin 模型。
我有两种类型的模型:BaseSetting,我与@register_setting和models.Model一起使用,然后与ModelAdmin和modeladmin_register一起显示
目前我有两个单独的应用程序,它们单独工作得很好。但是,我注意到了一个问题。当使用 ModelAdminGroup 时,显然它只能将 ModelAdmin 类带入其中。
admin.py 的内容
作为参考,这里是导入设置的片段:
发生以下错误。
TypeError: SidebarSettings() got an unexpected keyword argument 'parent'
我认为部分错误是装饰器也被忽略了。
我尝试的另一种方法是将设置直接添加到我创建模型的应用程序的 models.py 中。
models.py 的内容。我使用的设置与前一个片段中导入的设置不同(我不想开始破坏已经工作的代码并且两次导致问题)。但它仍然是 BaseSetting 所以概念是一样的
我可以立即看到我无法在此处注册设置的问题 - 它会直接转到“设置”。此外,它也不起作用。
同样,有问题的设置和模型在单独运行时都可以正常工作。我的问题是将它们聚合到一个子菜单中
做这个的最好方式是什么?我曾尝试深入研究文档以及 Stack Overflow,但还没有找到答案。
谢谢!
wagtail - Windows 10 上 wagtail 的客户端文件夹在哪里
我使用 pip 在我的计算机上安装 wagtail。它的操作系统是windows 10。在我的项目中,我需要自定义admin UI,主要是修改client文件夹中的css文件。文件夹客户端与 github 上的文件夹 wagtai 是对等的。但我在我的电脑上找不到客户端文件夹。
如何找到客户端文件夹?
希望得到您的帮助。
wagtail - Wagtail 嵌套的内联面板 - 仅保存第一个选择
我想在 Wagtail 中添加嵌套内联(尝试 2.11.3 和 2.12.3),但是只保存第一个嵌套字段(在作者和文章下)。嵌套的 PageChooserPanel 也显示一个列表,不知道这是否正常和预期。我需要将“作者”动态添加到“文章”,然后添加到相应的“公告”页面,以便我可以与作者建立关系并在他的个人资料中获取他的文章。
任何帮助将非常感激。提前谢谢了。
wagtail - 如何在 wagtails 模型管理中添加额外的自定义视图?
我正在尝试在 wagtails 模型管理员中添加新视图。但我面临错误。我正在尝试按照此问题中解释的步骤进行操作。https://github.com/wagtail/wagtail/issues/3336
这是我的代码片段。
我不知道我错过了什么。
wagtail - Wagtail 中的模板和模型重用
我正在构建一个相当基本的 Wagtail 站点,并且遇到了关于模型和模板重用的问题。
假设我的网站有两种条目:
- 博客文章和
- 事件。
两个页面看起来相同并且共享许多模型字段(例如,作者、类别、介绍等)。但是,有些模型字段仅对事件条目类型有意义(例如,event_date、event_venue)。
为这个用例创建模板和模型而不在代码中重复我自己的理想方法是什么?
现在,博客和事件条目都使用相同的 HTML 模板和相同的模型。但是,当用户在 Wagtail 管理员中创建博客文章时,他或她必须“忽略”特定于事件的字段(将来可能会变得更多)。
尽管博客和活动 95% 的代码相同,我是否必须创建两个单独的模板文件和两个单独的模型?在 Wagtail 中解决这个问题的正确方法是什么?