[Django]-No module named 'polls.apps.PollsConfigdjango'; Django project tutorial 2

163👍

The first problem is this warning in the traceback:

No module named 'polls.apps.PollsConfigdjango'

That means that you are missing a comma after 'polls.apps.PollsConfig in your INSTALLED_APPS setting. It should be:

INSTALLED_APPS = (
    ...
    'polls.apps.PollsConfig',
    'django....',
    ...
)

The second problem is the warning 'polls.apps' is not a package. That suggests that you have installed Django 1.8, but you are following the Django 1.9 tutorial.

If you are using Django 1.8, then follow the 1.8 tutorial so that you don’t hit problems like this. Adding the polls app to INSTALLED_APPS is covered here in the Django 1.8 tutorial. Note that it doesn’t use PollsConfig.

INSTALLED_APPS = (
    ...
    'polls',
)

44👍

ImportError: No module named 'polls.apps.PollsConfigdjango'

You forgot to add ‘,’ in the list

33👍

check for comma “,” after ‘polls.apps.PollsConfigdjango’

14👍

You just missed a comma after 'polls.apps.PollsConfig'.

Don’t worry, it happens for the best of us!

12👍

Anyone who is getting
ModuleNotFoundError: No module named ‘pollsdjango’

And INSTALLED_APPS :

INSTALLED_APPS = [
    'polls.apps.PollsConfig'
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Solution:

You forgot to add comma(,) at the end of line ‘polls.apps.PollsConfig’

INSTALLED_APPS = [
    'polls.apps.PollsConfig', <----this comma
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

4👍

Quoted from https://code.djangoproject.com/ticket/27139

Description

In tutorial 02, Writing your first Django app, part 2, typing in

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
   ....

will cause an ImportError: No module named ‘polls.apps.PollsConfig’; ‘polls.apps’ is not a package

This is resolved by instead putting

INSTALLED_APPS = [
    'polls',
   ....

3👍

I was getting a similar error: ImportError: No module named ‘polls’

The cause was that I stored my apps inside the “apps” directory.
The solution is to change the code inside apps.py

from:

class PollsConfig(AppConfig):
    name = 'polls'

to (“apps” is the name of my django apps directory):

class PollsConfig(AppConfig):
    name = 'apps.polls'
👤iDevPy

2👍

you forget to add "," after ‘polls.apps.PollsConfig’ ","
must include a comma "," … ‘polls.apps.PollsConfig’,

1👍

If you come from Django Tut here’s the problem You just missed a comma after ‘polls.apps.PollsConfig’. so it should be

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    ....
]

0👍

If none of the above/below fix your problem and you came here with the same errors make sure that you do not have a __init__.py in your top level directory. Hope this helps someone out there!

👤Fry

-1👍

If we are getting error regarding not a package than most of the time it may happen that we missed to add __init__.py file within the directory where we are getting this error.

Leave a comment