Python:';模块';对象没有属性';getuid';
我正在尝试编写我的第一个django Web应用程序,它在一个简单的视图中运行良好,但当我包含我的模型时,它开始出现以下错误Python:';模块';对象没有属性';getuid';,python,django,Python,Django,我正在尝试编写我的第一个django Web应用程序,它在一个简单的视图中运行良好,但当我包含我的模型时,它开始出现以下错误 'module' object has no attribute 'getuid' Request Method: POST Request URL: http://localhost:8080/photos/ Django Version: 1.2.5 Exception Type: AttributeError Exception Value: 'mod
'module' object has no attribute 'getuid'
Request Method: POST
Request URL: http://localhost:8080/photos/
Django Version: 1.2.5
Exception Type: AttributeError
Exception Value:
'module' object has no attribute 'getuid'
Exception Location: /Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/posixpath.py in expanduser, line 321
Python Executable: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python
我读到这可能是因为循环导入问题,但我在模型导入中没有看到任何内容
import logging
import sys
import os
import flickrapi
def get_photos_for_artist(artist=None):
if not artist:
logging.error('can not find photos for unknown artist')
return None
api_key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'
flickr = flickrapi.FlickrAPI(api_key)
gen = flickr.walk(tags=artist, content_type=1, per_page=10)
return gen
def main():
pass
if __name__ == '__main__':
main()
这可能是什么原因造成的
Django日志说:
/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/posixpath.py in expanduser
return path
i = path.find('/', 1)
if i < 0:
i = len(path)
if i == 1:
if 'HOME' not in os.environ:
import pwd
userhome = pwd.getpwuid(os.getuid()).pw_dir ...
else:
userhome = os.environ['HOME']
else:
import pwd
try:
pwent = pwd.getpwnam(path[1:i])
expanduser中的/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/posixpath.py
返回路径
i=path.find('/',1)
如果i<0:
i=len(路径)
如果i==1:
如果“主页”不在os.environ中:
进口pwd
userhome=pwd.getpwuid(os.getuid()).pw_dir。。。
其他:
userhome=os.environ['HOME']
其他:
进口pwd
尝试:
pwent=pwd.getpwnam(路径[1:i])
尝试检查python版本,检查python安装和PYTHONPATH变量。可能是环境问题,而不是代码问题。您没有提供任何有用的信息。例如,您发布的代码似乎与实际视图不一致。Django在遇到错误时会打印一个非常有用的调试页面:您应该查看该页面,如果需要,请将回溯粘贴到此处(首先单击“切换到复制并粘贴视图”)。错误消息是明确的:os.getuid()
使用的函数posixpath.expanduser()
不存在。这很奇怪,因为您似乎正在使用Mac OS X,而Mac OS X作为Unix系统,应该提供getuid()
。你是不是搞乱了标准库模块?@FerdinandBeyer,不,我不是搞乱了标准系统你的目录里有os.py
吗?