I am using django 1.10.5, and mongodb in project backend. My project structure is as follow-
project_name
|-- applications
| |-- app1
| | |-- admin.py
| | |-- upload.py
| | |-- __init__.py
| | |-- migrations
| | | `-- __init__.py
| | |-- models.py
| | |-- services.py
| | |-- urls.py
| | |-- views.py
| |-- __init__.py
|-- __init__.py
|-- manage.py
|-- project_name_config
|-- __init__.py
|-- settings
| |-- dev_settings.py
| |-- __init__.py
| |-- prod_settings.py
| |-- settings.py
|-- urls.py
|`-- wsgi.py
I am using virtual environment. I have created app using manage.py under directory applications. As per django tutorials when I have added app_name under INSTALLED_APPS list in settings.py, as-
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'corsheaders',
'applications.app1',
]
it is giving error as-
(virtEnv):~$python manage.py runserver
Unhandled exception in thread started by <function wrapper at 0x7fe94e554848>
Traceback (most recent call last):File "/home/dir_project/virtEnv/local/lib/python2.7/site- packages/django/utils/autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 113, in inner_run
autoreload.raise_last_exception()
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/utils/autoreload.py", line 249, in raise_last_exception
six.reraise(*_exception)
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/utils/autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/__init__.py", line 27, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "/home/dir_project/virtEnv/local/lib/python2.7/site-packages/django/apps/config.py", line 90, in create
module = import_module(entry)
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named app1
But when I removed app_name from settings.py my application, views etc everything is working.
Considering future scope, is it mandatory to add app_name in settings.py under INSTALLED_APPS list.
Thanks in advance.