3

我尝试使用 django-grappelli 仪表板,但管理界面出现错误。

Django Version: 1.4.1
Exception Type: ImportError
Exception Value:    
No module named dashboard

In template /.../lib/python2.7/site-packages/grappelli/dashboard/templates/admin/index.html, error at line 32
31  {% block content %}
32  {% grp_render_dashboard %}
33  {% endblock %}

我可以在更改之前使用 grappelli 管理界面。采取的步骤是根据手册。我将这些添加到我的 settings.py

    GRAPPELLI_INDEX_DASHBOARD = 'myproj.dashboard.CustomIndexDashboard'
    ...
TEMPLATE_CONTEXT_PROCESSORS = (
    "django.contrib.auth.context_processors.auth",
    "django.core.context_processors.request",
    "django.core.context_processors.i18n",
    'django.contrib.messages.context_processors.messages',
)

    INSTALLED_APPS = (
        'grappelli.dashboard',
        'grappelli',
        'django.contrib.admin',
         ...

dashboard.py 位于根目录 (myproj) 中。它有一个类。

 class CustomIndexDashboard(Dashboard):

myproj
├── admin
│   ├── css
:
├── dashboard.py
├── grappelli
│   ├── images
│   │   ├── backgrounds
├── myapp
│   ├── __init__.py
│   ├── __init__.pyc
4

2 回答 2

17

好的,它开始工作了。dashboard.py 需要移动到 myproj/myproj

于 2012-09-13T19:44:38.283 回答
3

我也遇到过同样的问题!感谢您的回答,但您的回答似乎过于简单,以至于我最初无法理解。请允许我详细说明,以便其他人能够解决类似的问题。

假设你有一个这样的目录结构:

 myproj
    ├── myproj

    ├── settings.py
    ├── manage.py
    ├── urls.py
    ├── grappelli
    │   ├── ...
    ├── myapp
    │   ├── __init__.py
    │   ├── __init__.pyc

执行以下操作后:

    python manage.py customdashboard 

dashboard.py是在(第一个)目录中生成的,myproj目录结构如下所示:

myproj
├── myproj
├── dashboard.py
├── settings.py
├── manage.py
├── urls.py
├── grappelli
│   ├── ...
├── myapp
│   ├── __init__.py
│   ├── __init__.pyc

您应该将dashboard.py文件放在myproj/myproj目录中。然后你登录到管理站点,你会发现它有效。这在仪表板设置中没有明确描述

于 2013-11-25T00:53:58.123 回答