Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.1K
Views
Django - cannot import name 'config' from 'decouple'

I'm trying to run this project locally but when i try manage.py makemigrations i keep getting the following error:

ImportError: cannot import name 'config' from 'decouple'

Here are my steps:

  1. Clone the repository from github
  2. Create a virtual environment
  3. Install the dependencies

I made some research but i found nothing about what could be generating that error. Can anyone help me out on this? Thanks in advance!I'm running Django 3.

over 4 years ago · Santiago Trujillo
6 answers
Answer question

0

It shows the error because you are not installed the module python-decouple Just run pip install -r requirements.txt If it won't work then try it in env

pip install python-decouple

over 4 years ago · Santiago Trujillo Report

0

You might have decouple installed in additional to python-decouple (two different packages).

If that is the case simply uninstall decouple

pip uninstall decouple

And ensure you have python-decouple installed

pip install python-decouple
over 4 years ago · Santiago Trujillo Report

0

I was using pipenv to create a virtual environment and run the Django project

pipenv install -r requiremnts.txt
pipenv shell
python manage.py runserver

Interestingly above method kept throwing error that it cannot import config from decouple

then I tried:

python -m venv myEnv
myEnv/Scripts/activate
pip install -r requirements.txt
python manage.py runserver

and this ran the project successfully. I didnt understand why this would happen as I am doing pretty much same just using pip instead of pipenv.

over 4 years ago · Santiago Trujillo Report

0

After trying almost everything, installing the python-decouple for the whole system, as opposed to in an environment, worked for me. So left the virtual environment, installed python-decouple then activated back my environment again. It works for me.

Let me know if this helps.

over 4 years ago · Santiago Trujillo Report

0

I encountered the same issue, and in my case, it was caused by a conflict between "decouple" and "python-decouple" packages (I had installed both of them by mistake). As the latter creates a file called "decouple.py" in the installation virtual environment, finding the package of the same name, this will confuse the Django app of which of the 2 decouple reference it will consider. To fix this I had to uninstall the "decouple" package with pipenv uninstall decouple and install the "python-decouple" package with pipenv install python-decouple.

...

class AutoConfig(object):
    """
    Autodetects the config file and type.

    Parameters
    ----------
    search_path : str, optional
        Initial search path. If empty, the default search path is the
        caller's path.

    """
    ...

# A pré-instantiated AutoConfig to improve decouple's usability
# now just import config and start using with no configuration.
config = AutoConfig()

# Helpers
...

over 4 years ago · Santiago Trujillo Report

0

I struggled with this for a good hour, the fix was to close the current bash/terminal window and opening a new one.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!