【问题标题】:Reverse for 'filer_folder_changelist' not found未找到“filer_folder_changelist”的反向
【发布时间】:2019-04-09 12:38:01
【问题描述】:

我正在使用 django 和 django-cms 将站点部署到 divio 服务器。我做了研发,但没有找到太多这方面的信息。

面临错误:找不到“filer_folder_changelist”的反向。 'filer_folder_changelist' 不是有效的视图函数或模式名称。

异常类型:NoReverseMatch 异常值:Reverse for 未找到“filer_folder_changelist”。 'filer_folder_changelist' 不是 有效的视图函数或模式名称。例外 位置:/virtualenv/lib/python3.5/site-packages/django/urls/resolvers.py 在 _reverse_with_prefix,第 497 行 Python 可执行文件:/virtualenv/bin/uwsgi

{% cms_toolbar %}

**urls.py:**

] + aldryn_addons.urls.patterns() + i18n_patterns(
    # test urls
    url(r'^admin-cms/', include(admin.site.urls)),  # NOQA
    url(r'^django-cms/', include('cms.urls')),
    url(r'^django-cms1/',include('aldryn_django_cms.urls')),
    url(r'^test4/$',views.test4,),
    # ends here ~ test urls
    # add your own i18n patterns here
    *aldryn_addons.urls.i18n_patterns()  # MUST be the last entry!
)

cms_toolbar.py

def populate(self):
    media_library = _('Media library')

    admin_menu = self.toolbar.get_or_create_menu(ADMIN_MENU_IDENTIFIER)
    admin_menu.add_sideframe_item(
        media_library,
        url=reverse('admin:filer_folder_changelist'),
        position=self.get_insert_position(admin_menu, media_library)
    )

【问题讨论】:

  • 我认为filer_folder_changelist 不是网址名称,它应该是parent_url_name:filer_folder_changelist,它在urls.py 中定义,它位于settings.py 旁边
  • 感谢您的回答,但很抱歉,无法理解,我用 urls.py 更新了我的问题。如果可能,请查看 urls.py

标签: django django-cms divio


【解决方案1】:

做了一些研究,发现了这个:

  1. 需要安装django-admin-shortcuts
  2. 为您的settings.py 添加快捷方式:

      ADMIN_SHORTCUTS = [
        {
            'shortcuts': [
                {
                    'url_name': 'admin:filer_folder_changelist',
                    'title': _('Files'),
                },
    
            ]
        },
    ]
    

您可以在here 中查看类似的实现。希望对你有帮助!!

【讨论】:

    【解决方案2】:

    我通过更改 settings.py 修复了这个错误。在 settings.py 中的已安装应用程序中添加以下内容:

    INSTALLED_APPS.extend([
        .....
        'djangocms_text_ckeditor',
        'filer',
        'easy_thumbnails',
        'djangocms_column',
        'djangocms_file',
        'djangocms_link',
        'djangocms_picture',
        'djangocms_style',
        'djangocms_snippet',
        'djangocms_googlemap',
        'djangocms_video',
        .....       
    )]
    

    【讨论】:

    • 如果您已将 Django Filer 作为 Divio Cloud 插件安装而不是手动安装,则无需手动管理设置。你是怎么安装的?
    • 感谢您的回答.. 我通过 divio 插件安装了 aldryn-django-cms
    • 面临另一个问题.. 当我从管理面板单击 placeholder_db 时,关系“placeholder_db”不存在... 上述异常(关系“vacations_edit_django_templates3”不存在第 1 行:.. ._edit_django_templates3"."my_placeholder_id" FROM "vacations... ^ ) 是以下异常的直接原因:
    • 但是你是如何安装 Django Filer 的?
    • 如果您将 Django Filer 作为 Divio Cloud 插件安装(默认情况下在 django CMS 项目中存在),则无需手动管理任何设置或 URL 模式。您绝对不需要像 stackoverflow.com/a/53184174/2422705 建议的那样在 INSTALLED_APPS 中手动管理它。
    猜你喜欢
    • 2020-09-09
    • 2019-10-19
    • 2018-06-28
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 2014-01-08
    • 2020-12-19
    • 1970-01-01
    相关资源
    最近更新 更多