神秘。我可能无法理解virtualenv足以使用它。 我创建了我认为的虚拟环境:
pip3 -m venv myenv
pip3 install --ignore-installed django~=2.0.0
Collecting django~=2.0.0
Using cached Django-2.0.1-py3-none-any.whl
Collecting pytz (from django~=2.0.0)
Using cached pytz-2017.3-py2.py3-none-any.whl
Installing collected packages: pytz, django
Successfully installed django-2.0.1 pytz-2017.3
001b639f6f87:myenv admin$ ls
bin include lib pyvenv.cfg
那么,Django在哪里?
实际上,这可能不是一个虚拟问题。运行相同 命令在非venv目录中具有相同的结果:没有Django。
所以,我想,也许我的Django 2.0存在问题 浑然不觉。让我们试试1.11:
001b639f6f87:django-test admin$ pip3 install --ignore-installed
django~=1.11.0
Collecting django~=1.11.0
Downloading Django-1.11.9-py2.py3-none-any.whl (6.9MB)
100%
|███████████&
#9608;██████████&#
9608;█████████| 7.0MB
108kB/s
Collecting pytz (from django~=1.11.0)
Using cached pytz-2017.3-py2.py3-none-any.whl
Installing collected packages: pytz, django
Successfully installed django-2.0.1 pytz-2017.3
001b639f6f87:django-test admin$ ls
001b639f6f87:django-test admin$ ls -l
001b639f6f87:django-test admin$
显然,对某些事情不清楚,但不确定问题所在。
答案 0 :(得分:0)
Django应该安装在/path/to/your/venv/lib/python3.x/site-packages/
您可以通过导入django然后检查django.__file__
。
>>> import django
>>> django.__file__
'/path/to/your/venv/lib/python3.x/site-packages/django/__init__.py'
请注意,安装Django的位置并不重要。关键是在激活虚拟环境后import django
可以正常工作。
答案 1 :(得分:0)
实际上,安装Django的地方确实很重要。强烈建议使用虚拟环境。这样做:
如果您没有安装'virtualenv',请先安装它。
sudo pip3 install virtualenv
virtualenv venv -p python3
source venv/bin/activate
使用虚拟环境有利于隔离,您的项目将是干净的,您将能够跟踪您在项目中使用的库。如果你决定销毁你的项目,你所要做的就是删除venv文件夹并且它都是干净的。
pip3 freeze
命令显示虚拟环境中已安装的库。最初它会是空的。pip3 install django