文件浏览器编号没有:NameError:名称“站点”未定义

时间:2018-09-23 16:59:34

标签: django python-3.6 django-tinymce django-filebrowser django-2.1

我正在关注this tutorial,用于安装 django-tinymce4-lite 。在本教程的最后,有安装 django-filebrowser-no-grappelli 的指示。

我使用Django 2.1.1,但是即使遵循所有指示,在显示文件浏览器的安装后也会显示以下消息:

  

文件   “ /var/www/html/dev/miosito/django/beautifulsite_v0.1.1/djangosite/djangosite/urls.py”,   第25行,在       path('admin / filebrowser /',include(site.urls)),NameError:未定义名称'site'

这里有urls.py:

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from filebrowser.sites import site #sorry I've forgot this

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('testapp.urls')), #app for my tests
    path('tinymce/', include('tinymce.urls')),
    path('admin/filebrowser/', include('site.urls')),
]

if settings.DEBUG:
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我怎么了?

进行Yeo校正后的

EDIT:

我添加了我忘记了的字符串并且我已经正确了

path('admin/filebrowser/', include(site.urls)), 

path('admin/filebrowser/', include('site.urls')),

但是现在我有了这个新错误:

  

ModuleNotFoundError:没有名为“ site.urls”的模块; “网站”不是   包装

1 个答案:

答案 0 :(得分:0)

请尝试以下操作:(删除include

# ...
from filebrowser.sites import site
# ...

urlpatterns = [
    # ...
    path('admin/filebrowser/', site.urls),
    # ...
]

当遇到特定于软件包本身的错误时,请始终参考软件包官方文档。 (在这种情况下为django-filebrowser,尽管主仓库似乎位于django-filebrowser-no-grappelli上)。博客有时容易过时。例如,链接中的指南未指定他们使用的Django版本。 (从编写本教程include的方式来看,它似乎是Django <1.9 (reference))。

如果您使用的是Django> = 2,则官方文档应说明安装此软件包的正确方法。