【问题标题】:django: grappelli: routing failsdjango:grappelli:路由失败
【发布时间】:2012-03-19 02:04:45
【问题描述】:
  1. 我已经通过 pip install 安装了 grappelli(当然,随后更新了它)。

  2. 我把它放在 INSTALLED_APPS 中的 django.contrib.admin 之前:

    INSTALLED_APPS = (
        ... 
        'grappelli',
        'django.contrib.admin',
    
  3. 我的 urls.py 看起来像这样:

    url(r'^grappelli/', include('grappelli.urls')),
    url(r'^admin/', include(admin.site.urls)),
    
  4. 我仍然收到错误:

    Using the URLconf defined in _myWebsite.urls, Django tried these URL patterns, in this order:
    ^grappelli/ ^lookup/related/$ [name='grp_related_lookup']
    ^grappelli/ ^lookup/m2m/$ [name='grp_m2m_lookup']
    ^grappelli/ ^lookup/autocomplete/$ [name='grp_autocomplete_lookup']
    ^admin/
    ^categories/$
    The current URL, grappelli/, didn't match any of these.
    

我做错了什么?

【问题讨论】:

  • 不,我正在使用 South... 告诉我没有迁移...
  • 但是 grappeli 应用程序不使用迁移 - 你必须运行 syncdb。甚至在安装过程中也提到了:/
  • 啊,RTFM的经典案例。彻底。谢谢一堆。将其作为信用的答案?

标签: python django django-grappelli


【解决方案1】:

也许您应该尝试重写您的 url 模式以匹配默认 urls.py 中的方式,例如:

urlpatterns = patterns('', #this first entry is very important
                      url(r'^grappelli/', include('grappelli.urls')), 
                      url(r'^admin/', include(admin.site.urls)))  

我知道,如果您使用 patterns 函数,具有第一个空字符串函数参数是非常重要的......也许您错过了它。

【讨论】:

  • 不,它在里面。我试过了。我一定是做错了什么。
【解决方案2】:

你必须运行syncdb 命令

【讨论】:

    【解决方案3】:

    如果您使用的是 Django 1.6 版,您可能需要在 grappelli 库中搜索“django.conf.urls.defaults”并将其替换为“django.conf.urls”。如果您使用的 Django 版本低于 1.6,那么我的帖子不是您的问题。希望您尽快修复它!

    【讨论】:

      猜你喜欢
      • 2012-01-17
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2018-01-15
      • 2016-12-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多