如何让django访问virtualenv脚本? 我在普通环境中设置django并运行python 2.7 我在不同的virtualenv和python 3.4中安装了一个模块
当我尝试使用在virtualenv中使用模块的脚本时,我得到: 没有名为MyModule的模块 我不确定这是否有意义,但是否可以让django使用source bin/activate或其他方法来使用脚本 编辑:尝试使其像这样工作,但仍会出现错误:如何让django访问virtualenv脚本? 我在普通环境中设置django并运行python 2.7 我在不同的virtualenv和python 3.4中安装了一个模块,python,django,Python,Django,当我尝试使用在virtualenv中使用模块的脚本时,我得到: 没有名为MyModule的模块 我不确定这是否有意义,但是否可以让django使用source bin/activate或其他方法来使用脚本 编辑:尝试使其像这样工作,但仍会出现错误: from django.shortcuts import render import sys sys.path.append("/root/scrape/env/lib/python3.4") from scraper import basic_us
from django.shortcuts import render
import sys
sys.path.append("/root/scrape/env/lib/python3.4")
from scraper import basic_usage
def view_fun(request):
basic_usage()
return Response
我认为问题是因为需要激活virtualenv,对吗?在“错误详细信息”下,显示正确的路径:
Python Path:
['/home/django/django_project',
'/home/django',
'/usr/bin',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages',
**'/root/scrape/env/lib/python3.4',
'/root/scrape/env/lib/python3.4',
'/root/scrape/env/lib/python3.4',
'/root/scrape/env/lib/python3.4',**
您不能使用来自不同python环境的模块。这就是拥有python环境的全部意义——它们是隔离的。 即使您成功地做到了这一点,但您所讨论的两个不同的python版本2.7/3.4很可能会使最简单的模块也无法工作
为什么不在同一个virtualenv中安装Django和模块呢?您甚至不需要特殊的操作系统权限来执行此操作。Er,不。在同一个virtualenv中安装脚本。它需要设置模块和同一个virtualenv中的所有模块。为什么不创建一个django命令呢?