Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django-没有名为reportlab.pdfgen的模块_Python_Django_Importerror - Fatal编程技术网

Python Django-没有名为reportlab.pdfgen的模块

Python Django-没有名为reportlab.pdfgen的模块,python,django,importerror,Python,Django,Importerror,我已运行以下命令以确保安装了reportlab。然而,Django仍然给我一个例外,说reportlab无法导入 pip install reportlab >> python manage.py shell Python 2.7.9 (default, Mar 1 2015, 12:57:24) [GCC 4.9.2] on linux2 Type "help", "copyright", "credits" or "license" for more information.

我已运行以下命令以确保安装了reportlab。然而,Django仍然给我一个例外,说reportlab无法导入

pip install reportlab

>> python manage.py shell
Python 2.7.9 (default, Mar  1 2015, 12:57:24)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from reportlab.pdfgen import canvas
>>> from reportlab.lib.pagesizes import letter
但Django还是给了我一个错误

No module named reportlab.pdfgen

Request Method:     POST
Request URL:    https://local/p/m/
Django Version:     1.8.11
Exception Type:     ImportError
Exception Value:    

No module named reportlab.pdfgen
下面是我的代码

def create_pdf(project, matrix, request=None):
        from django.utils import timezone
        from io import BytesIO
        from reportlab.pdfgen import canvas
        from reportlab.lib.pagesizes import letter

        y = 700

        buffer = BytesIO()

        p = canvas.Canvas(buffer, pagesize=letter)

        p.setFont('Helvetica', 10)

您是如何部署Django的?它使用的虚拟环境与您在shell中测试导入时使用的虚拟环境不同吗?很可能您的reportlab不是由运行Django的同一个python安装的我没有使用virtual env,我也没有使用运行Django的不同python。是的,我使用的是virtual env。这就解决了问题。