我正在尝试运行使用django 1.6的statsd / graphite。
访问石墨网址时,我收到django模块错误
文件“/opt/graphite/webapp/graphite/urls.py”,第15行,in 来自django.conf.urls.defaults import * ImportError:没有名为defaults的模块
但是,我在/Library/Python/2.7/site-packages/django/conf/urls/
请帮助解决此问题。
答案 0 :(得分:189)
django.conf.urls.defaults
has been removed in Django 1.6。如果问题出在您自己的代码中,您可以通过将导入更改为
from django.conf.urls import patterns, url, include
但是,在您的情况下,问题出现在第三方应用程序石墨中。石墨主分支中的问题has been fixed和版本0.9.14 +。
在Django 1.8+中,您可以从导入中删除patterns
,然后使用url()
列表。
from django.conf.urls import url, include
答案 1 :(得分:3)
如果由于某种原因您不想降级到Django 1.5.x或升级Graphite,那么您可以将the fix应用于旧的Graphite:
find ./ -type f -exec sed -i -e 's/from\ django\.conf\.urls\.defaults\ import\ \*/from\ django\.conf\.urls\ import\ \*/g' {} \;
..在<graphite_dir>/webapp/graphite
目录中。
这有助于我使用Graphite 0.9.12和Django 1.7(.5)。
(我也必须这样做:
find ./ -type f -exec sed -i -e 's/mimetype\=/content_type\=/g' {} \;
find ./ -type f -exec sed -i -e 's/content_type\=mimetype/content_type\=content_type/g' {} \;
..稍后,因为我设法启动Graphite后,它的一些功能无法正常工作。现在他们为我工作,但YMMV。)
答案 2 :(得分:0)
转到安装python的文件位置。 在该路径上打开 cmd,然后使用命令安装 django >> pip install django
然后用import django交叉检查python shell(应该什么都不做) 或者简单地使用命令 >> python -m django --version
它只会给你版本 enter image description here