2011-05-03 48 views
0

任何人都可以帮助我在Django摆脱这些警告吗?Django模块已经导入和python鸡蛋警告

/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/_speedups.py:3: UserWarning: Module taggit was already imported from /var/www/html/matilah/taggit/__init__.py, but /usr/lib/python2.6/site-packages/django_taggit-0.9.3-py2.6.egg is being added to sys.path 

Traceback (most recent call last): 
File "manage.py", line 11, in <module> 
    execute_manager(settings) 
File "/usr/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager 
    utility.execute() 
File "/usr/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
File "/usr/lib/python2.6/site-packages/django/core/management/__init__.py", line 261, in fetch_command 
    klass = load_command_class(app_name, subcommand) 
File "/usr/lib/python2.6/site-packages/django/core/management/__init__.py", line 67, in load_command_class 
    module = import_module('%s.management.commands.%s' % (app_name, name)) 
File "/usr/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
File "/usr/lib/python2.6/site-packages/haystack/__init__.py", line 154, in <module> 
    handle_registrations() 
File "/usr/lib/python2.6/site-packages/haystack/__init__.py", line 151, in handle_registrations 
    search_sites_conf = importlib.import_module(settings.HAYSTACK_SITECONF) 
File "/usr/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
File "/var/www/html/matilah/search_sites.py", line 2, in <module> 
    haystack.autodiscover() 
File "/usr/lib/python2.6/site-packages/haystack/__init__.py", line 106, in autodiscover 
    app_path = importlib.import_module(app).__path__ 
File "/usr/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module 
    __import__(name) 
File "/var/www/html/matilah/disqus/__init__.py", line 5, in <module> 
    from django.utils import simplejson as json 
File "/usr/lib/python2.6/site-packages/django/utils/simplejson/__init__.py", line 111, in <module> 
    import simplejson 
File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/__init__.py", line 111, in <module> 

File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/decoder.py", line 7, in <module> 
File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/scanner.py", line 10, in <module> 
File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/scanner.py", line 6, in _import_c_make_scanner 
File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/_speedups.py", line 7, in <module> 
File "/usr/lib/python2.6/site-packages/simplejson-2.1.5-py2.6-linux-x86_64.egg/simplejson/_speedups.py", line 4, in __bootstrap__ 
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 841, in resource_filename 
    self, resource_name 
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1310, in get_resource_filename 
    self._extract_resource(manager, self._eager_to_zip(name)) 
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1332, in _extract_resource 
    self.egg_name, self._parts(zip_path) 
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 921, in get_cache_path 
    self.extraction_error() 
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 887, in extraction_error 
    raise err 
pkg_resources.ExtractionError: Can't extract file(s) to egg cache 

The following error occurred while trying to extract file(s) to the Python egg 
cache: 

[Errno 13] Permission denied: '/home/interworx/.python-eggs' 

The Python egg cache directory is currently set to: 

/home/interworx/.python-eggs 

Perhaps your account does not have write access to this directory? You can 
change the cache directory by setting the PYTHON_EGG_CACHE environment 
variable to point to an accessible directory. 

我不知道如果“模块已经进口”的错误已与“不能提取PYTHON蛋”错误的事。

在我的WSGI中,我已经有了以下行os.environ['PYTHON_EGG_CACHE'] = rel('python-eggs'),并且我确实知道这是行得通的。否则,WSGI将不会加载我的应用程序。所以我不确定这里要做什么。

谢谢!

回答

2

当您收到类似“您的帐户可能无法访问此目录的写入权限?最好做一个快速测试。尝试将其更改为“/ tmp”(可由所有人写入)并查看是否开始工作。如果解决了这个问题,您可以确定一个更合适的目录,并确保您(或服务器)具有写入权限。

更新:您在选择解决最早的错误消息时是正确的。这是一个快速实用程序,Python Module Dump,我几年前编写的,用于追踪错误包含的模块错误。您可以尝试在初始化代码路径中的有趣点处插入它,并查看是否可以在早期导入时发现。

+0

感谢您的回复。是的,我了解权限。我感到困惑的是,我认为我已将PYTHON_EGG目录更改为'os.environ ['PYTHON_EGG_CACHE'] = rel('python-eggs')',这是我在.wsgi文件中完成的。这导致'/ my/project/path/python-egg',我知道它肯定有写权限。所以我的问题是为什么它试图解压到'/ home/interworx/.python-eggs'? – rabbid 2011-05-03 09:13:56

+0

对不起。你的第一行很长,错误大概是3个屏幕宽度向右滚动。 – 2011-05-03 14:53:47

+0

是的,我知道。我的错 ! :) 有任何想法吗? – rabbid 2011-05-03 15:10:44

0

您的初始问题“模块已经导入”实际上与您遇到的权限错误有关。您最好的选择是修复/home/interworx/.python-eggs目录上的权限/所有权设置(如上面的Peter Rowell所述)。

我今天在谷歌代码大学遇到了这个很好的小复习。不会伤害通过这个脱脂当你有一段时间了:http://code.google.com/edu/tools101/linux/ownership_permissions.html

刚才看了上面这里的评论是我的想法:

我认为问题是,.wsgi文件没有设置环境变量时间。你可以请张贴你的.wsgi文件吗?另外,你如何抓包?它是一个脚本?通过点子手动?

+0

感谢您的回复!请参阅我对彼得关于权限的回答的评论。谢谢! – rabbid 2011-05-03 09:15:10