Rai Shahnawaz
Rai Shahnawaz

Reputation: 468

from django.core.management import execute_from_command_line not working

I am working on a bug project. Which is on Python 2.7, we are migrating to Python 3.9. I am getting import errors in manage.py during importfrom django.core.management import execute_from_command_line. For python 2.7 it is fine but for python 3 it is not working. I've created separate virtual environment for Python 3.

manage.py

#!/usr/bin/env python
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "best_buy_mall.settings")
    try:
        from django.core.management import execute_from_command_line
    except ImportError:
        try:
            import django
        except ImportError:
            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?"
            )
        raise
    execute_from_command_line(sys.argv)

dir tree: my_app/django_site/manage.py

my_app/venv (for python2)

my_app/v_env (for python3)

Upvotes: 0

Views: 1561

Answers (2)

Shivika Tripathi
Shivika Tripathi

Reputation: 11

This code works

    sudo apt-get update

Upvotes: 0

Rai Shahnawaz
Rai Shahnawaz

Reputation: 468

sudo pip install django --upgrade 

I solved this by upgrading django. and if someone getting psycopg2 error, then run

sudo pip install psycopg2 --upgrade 

or install psycopg-binary

sudo pip install psycopg2-binary --upgrade 

Upvotes: 1

Related Questions