繁体   English   中英

python virtualenv无法访问主目录中的文件

[英]python virtualenv can not access file in home directory

我在Django设置中使用此代码来构造数据库路径

from os.path import expanduser
defautl_db_path = expanduser("~")+"/db.sqlite3"

如果我在系统范围内安装Django,代码运行良好,但如果我在virtualenv运行应用程序,应用程序会抛出一个异常,说unable to open database file

我怎么解决这个问题?

你检查了进程所有者主目录的权限吗? 你是在使用Unix操作系统吗?

django用户很可能是www-data。

如果您选中此选项,则可以尝试通过向〜添加用户名来解决特定用户的主目录。

from os.path import expanduser
defautl_db_path = expanduser("~www-data")+"/db.sqlite3"

在文档中写道:

os.path.expanduser(path)在Unix和Windows上,返回参数,其初始组件为〜或〜,用户的主目录替换。

在Unix上,如果设置了初始〜,则由环境变量HOME替换; 否则,通过内置模块pwd在密码目录中查找当前用户的主目录。 直接在密码目录中查找初始〜用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM