В чем основное различие между использованием ./manag.py и python manage.py в виртуальной среде - PullRequest
0 голосов
/ 19 марта 2020

Я не могу выполнить ./manage.py makemigrations для Django проекта. Тем не менее, я мог бы использовать python manage.py makemigrations и python3 manage.py makemigrations.

Я использую pipenv для управления своей виртуальной средой, выполняя вышеуказанные операции, я уже активировал свою виртуальную среду, в которой были установлены все пакеты, включая Django.

. py

#!/usr/bin/python3
"""Django's command-line utility for administrative tasks."""
import os
import sys


def main():
    os.environ.setdefault('DJANGO_SETTINGS_MODULE',
                          'my_project.settings.base')
    try:
        from django.core.management import execute_from_command_line  # noqa
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)


if __name__ == '__main__':
    main()

Содержимое после типа python напрямую:

Python 3.7.5 (default, Nov 20 2019, 09:21:52) 
[GCC 9.2.1 20191008] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

Журнал консоли после использования ./manage.py makemigrations

(my-env) jun@ubuntu:~/Desktop/projects/my-project/$ ./manage.py makemigrations
Traceback (most recent call last):
  File "./manage.py", line 11, in main
    from django.core.management import execute_from_command_line  # noqa
ModuleNotFoundError: No module named 'django'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "./manage.py", line 22, in <module>
    main()
  File "./manage.py", line 17, in main
    ) from exc
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

Мой вопрос: что основное различие между использованием ./manage.py makemigrations и python manage.py makemigrations в активированной виртуальной среде? Как решить эту проблему?

Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...