有没有一种简单的方法来获取Django项目使用的Python包列表?
我已经查看了snakefood和这个问题,但是似乎都不能在Django环境中很好地运行。
理想情况下,我正在寻找一条命令,可以从python shell或bash中执行,以列出所有不是Django本地支持的pypy依赖项。
有没有一种简单的方法来获取Django项目使用的Python包列表?
我已经查看了snakefood和这个问题,但是似乎都不能在Django环境中很好地运行。
理想情况下,我正在寻找一条命令,可以从python shell或bash中执行,以列出所有不是Django本地支持的pypy依赖项。
pip freeze
*
)由以下组成:settings.INSTALLED_APPS
加载的应用程序(以及它们的依赖项)settings.INSTALLED_APPS
加载的应用程序INSTALLED_APPS
中的应用程序路径:#!/usr/bin/env python
from settings import INSTALLED_APPS
from django.utils.importlib import import_module
import os
app_names = (x for x in INSTALLED_APPS if not x.startswith('django'))
app_paths = (os.path.dirname(os.path.abspath(import_module(x).__file__)) for x in app_names)
print "\n".join(x for x in app_paths if not x.startswith(os.getcwd()))
snakefood
来发现它们的依赖关系。
*
为了更加彻底,应该能够从settings
中发现各种后端(db/cache/auth等),并将相关模块包含在你的依赖列表中。 pip freeze > requirements.txt
pip3 freeze > requirements.txt
你会在Django项目的内部找到requirements.txt文件。