gpt4 book ai didi

python - Django-nested-admin 网址未加载

转载 作者:行者123 更新时间:2023-12-05 07:54:29 27 4
gpt4 key购买 nike

我正在尝试让任何类型的嵌套内联与 python 3 和 django 1.8 一起工作。

我尝试了 django super-inlines 并没有真正使它们嵌套,它们只是有点出现在彼此旁边。

我目前正在尝试使用 django-nested-admin,但使用此模式搜索时出现页面未找到错误:

^ ^$ [名称='浏览']

^admin/^server-data.js$ [name='nesting_server_data']

浏览指向一组单独的 url 的链接,这不会加载任何管理链接。

urls.py:

from django.conf.urls import include, url
import nested_admin

urlpatterns = [
url(r'^', include('flightdb.urls')),
url(r'^admin/', include('nested_admin.urls')),
]

连接到/admin/时出现 404 未找到错误。

对于页面未加载原因的任何帮助或使嵌套内联工作的任何更好方法,我们将不胜感激。

最佳答案

模式 r'^' 将匹配任何也匹配 r'^admin/' 的内容。 Django 从 urlpatterns 的开头开始执行 URL 匹配,并一直进行到找到第一个 匹配。因此,在这种情况下,本应在管理中的内容与 '^' 相匹配,即 flightdb.urls,但它们不会被发现。您可以通过按如下方式重新排序 url 来解决此问题:

urlpatterns = [
url(r'^admin/', include('nested_admin.urls')),
url(r'^', include('flightdb.urls')),
]

现在在其他顶级 url 之前检查 admin 是否匹配。

编辑:我怀疑您的问题是由于在您的 url 模式中使用“admin”转到默认 Django 管理包以外的其他地方。我在 django-nested-admin 的来源中做了一些搜索特别是在这里遇到了一些事情: https://github.com/theatlantic/django-nested-admin/blob/master/nested_admin/options.py特别是看看第 275 行:

    context = {
'title': _('Add %s') % force_unicode(opts.verbose_name),
'adminform': adminForm,
'is_popup': (IS_POPUP_VAR in request.POST or
IS_POPUP_VAR in request.GET),
'show_delete': False,
'media': mark_safe(media),
'inline_admin_formsets': inline_admin_formsets,
'errors': helpers.AdminErrorList(form, formsets),
'root_path': reverse('admin:index'),
'app_label': opts.app_label,
}

这里调用了reverse('admin:index')。这需要解析为通常的 admin 路径才能工作。当你像你一样定义你的 url 时,你会遇到 admin 现在不是 django-nested-admin 期望看到的默认值的问题。

也许尝试一种不是“admin”的不同 url 模式,例如他们的文档建议的那种:

url(r'^nested_admin/', include('nested_admin.urls')),

这样,在 django-nested-admin 包内部使用的 reverse 就可以工作了。

关于python - Django-nested-admin 网址未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31254118/

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