gpt4 book ai didi

python - 使用内联模型扩展 Django CMS PageAdmin 时出现权限错误

转载 作者:太空宇宙 更新时间:2023-11-03 17:59:31 24 4
gpt4 key购买 nike

在使用内联扩展 PageAdmin 类时,我似乎遇到了权限问题。

从我的调试来看,我似乎无权添加管理内联,因为 PageAdmin 中的以下方法返回空列表。

def get_inline_classes(self, request, obj=None, **kwargs):
if obj and 'permission' in request.path:
return PERMISSION_ADMIN_INLINES
return []

我是网站 super 用户,那么您如何获得执行此操作的权限? CMS_PERMISSION = True 位于设置中(尽管我承认我从未研究过它的作用)。

我之前没有尝试过扩展 PageAdmin,但需要扩展页面选项,因此我编写了以下模型;

class ShowPageChildren(models.Model):
page = models.ForeignKey(
Page,
unique=True,
verbose_name=_("Page"),
editable=False,
related_name='child_menu'
)
show_children = models.BooleanField(
default=False
)
text = models.CharField(
max_length=255,
help_text=_("To accompany the page title in the menu")
)

当我加载页面的基本设置时,没有内联,但我的页面正在加载以下admin.py;

class ShowPageChildrenAdmin(admin.StackedInline):
print '\n\nShowPageChildrenAdmin\n\n'
model = ShowPageChildren
can_delete = False


PageAdmin.inlines.append(ShowPageChildrenAdmin)
try:
admin.site.unregister(Page)
except:
pass
admin.site.register(Page, PageAdmin)

这是添加到 CMS PageAdmin 设置的正确方法吗?

编辑 yakky 的以下答案

我按照旧的 answer 尝试了此实现在这里,这使它看起来理论上可行。因此,我只是实现了通常的页面扩展,并在页面菜单中添加了一个单独的菜单项。我还添加了设置扩展 discussion关于实现此功能的项目。

最佳答案

用于向页面和标题添加信息和设置的记录 API 记录在 http://docs.django-cms.org/en/release-3.3.x/how_to/extending_page_title.html并允许将数据添加到页面(独立于语言)和标题(依赖于语言)模型。目前还没有官方的方法可以直接扩展PageAdmin。

关于python - 使用内联模型扩展 Django CMS PageAdmin 时出现权限错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27962971/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com