Django pip freeze > requirements.txt не получает точные пакеты, установленные в виртуальном окружении

Django pip freeze > requirements.txt не получает точные пакеты, установленные в виртуальной среде, скорее он получает все пакеты, которые я когда-либо устанавливал, и это вроде как не то, что я хочу, позвольте мне показать изображение того, что происходит

enter image description here

ниже еще есть пакеты, пожалуйста, что я могу сделать

Когда бы вы ни делали

pip freeze

Выводит все установленные пакеты. Возможно, вы путаете пакеты, установленные как зависимость от пакетов, установленных вручную. Например, если вы установите Fastapi, он также установит jinja2. Я не могу придумать случая, когда вы хотите, чтобы пакеты устанавливались вами, а не их зависимостями. Это совсем не проблема.

С другой стороны, если он выдает вам все когда-либо установленные пакеты, это означает, что вы всегда устанавливали все пакеты в одном и том же окружении. Вы должны использовать различные окружения для каждого проекта (иногда даже более одного для одного проекта). В этом случае создайте другую виртуальную среду, установите требования, а затем снова используйте pip freeze. Шаги приведены ниже.

python3 -m venv venv
source venv/bin/activate
pip install {required packages}
pip freeze > requirements.txt
Вернуться на верх