Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.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 Requirements.txt太大了_Python_Django - Fatal编程技术网

Python Requirements.txt太大了

Python Requirements.txt太大了,python,django,Python,Django,对于一种Hello World应用程序,我在部署到heroku之前做了以下操作: pip freeze > requirements.txt 并且有50多个依赖项。我觉得这太多了,尽管如此,我还是从setting.py中删除了多余的依赖项,所以现在它看起来像: INSTALLED_APPS = ( 'django.contrib.contenttypes', 'django.contrib.staticfiles', 'app1' ) MIDDLEWARE_CL

对于一种Hello World应用程序,我在部署到heroku之前做了以下操作:

pip freeze > requirements.txt
并且有50多个依赖项。我觉得这太多了,尽管如此,我还是从setting.py中删除了多余的依赖项,所以现在它看起来像:

INSTALLED_APPS = (
    'django.contrib.contenttypes',
    'django.contrib.staticfiles',
    'app1'
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware'
)

我还能做什么?

命令用于通过
pip
实用程序安装的东西

它与您在
settings.py
中安装的应用程序无关。这些只是Django可以使用的应用程序。通过
pip安装的包是您的环境使用的python包

通过
pip
删除包可能会破坏您正在处理的其他项目或需要在“全局”环境中安装包的其他实用程序。 建议对使用Python执行的每个项目使用单独的
virtualenv
,因此每个项目都有自己的安装包、自己的pip实用程序和Python解释器


更多信息请参见
virtualenv

如果项目已经创建,我可以减少依赖项的数量还是必须重新创建它?您可以创建virtualenv,只安装当前项目所需的依赖项,并指示IDE使用新的virtualenv,而不是全局的。我没有提到任何关于IDE的内容,我使用的是记事本。如果您没有使用IDE,而是通过终端窗口编码,请通过该终端激活virtualenv,然后继续编码。您需要更深入地了解virtualenv的功能=它“设置”系统的环境变量指向特定的python可执行文件、pip可执行文件和站点包(与全局包不同)。一旦激活它,您将在此环境下工作,并且您已经存在的项目在该环境下运行时,将使用其设置。