Estoy usando la siguiente estructura de archivos, con las aplicaciones dentro de una carpeta llamada apps. Dentro de la carpeta apps he ...

Pregunta de la clase:
Creación de la primera app
Brandon James Huamán Mallcco

Brandon James Huamán Mallcco

Pregunta
studenthace 4 años

Estoy usando la siguiente estructura de archivos, con las aplicaciones dentro de una carpeta llamada apps.

Best-Practice-to-Structure-Django-Project-Directories-and-Files-1024x676.png

Dentro de la carpeta apps he creado una aplicación llamada main

/django_project /apps - /__pycache__ - /main - __init__.py /templates /static /media

Sin embargo, se me presenta el siguiente error al correr el proyecto:

(.env) ➜ gym git:(master) ✗ python3 manage.py runserver Watching for file changes with StatReloader Exception in thread django-main-thread: Traceback (most recent call last): File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/apps/config.py", line 244, in create app_module = import_module(app_name) File "/usr/lib/python3.9/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "<frozen importlib._bootstrap>", line 1030, in _gcd_import File "<frozen importlib._bootstrap>", line 1007, in _find_and_load File "<frozen importlib._bootstrap>", line 984, in _find_and_load_unlocked ModuleNotFoundError: No module named 'main' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner self.run() File "/usr/lib/python3.9/threading.py", line 910, in run self._target(*self._args, **self._kwargs) File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/utils/autoreload.py", line 64, in wrapper fn(*args, **kwargs) File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/core/management/commands/runserver.py", line 110, in inner_run autoreload.raise_last_exception() File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/utils/autoreload.py", line 87, in raise_last_exception raise _exception[1] File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/core/management/__init__.py", line 375, in execute autoreload.check_errors(django.setup)() File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/utils/autoreload.py", line 64, in wrapper fn(*args, **kwargs) File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/__init__.py", line 24, in setup apps.populate(settings.INSTALLED_APPS) File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/apps/registry.py", line 91, in populate app_config = AppConfig.create(entry) File "/home/brandonjj/proyectos/EntornoGym/lib/python3.9/site-packages/django/apps/config.py", line 246, in create raise ImproperlyConfigured( django.core.exceptions.ImproperlyConfigured: Cannot import 'main'. Check that 'apps.main.apps.MainConfig.name' is correct.

El archivo .settings.py esta de esta forma:

DJANGO_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ] THIRD_PARTY_APPS = [] LOCAL_APPS = [ 'apps.main', ] INSTALLED_APPS = DJANGO_APPS + THIRD_PARTY_APPS + LOCAL_APPS

Y el archivo .apps.py de la aplicación main esta de esta forma:

from django.apps import AppConfig class MainConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' name = 'main'
No hay respuestas
para escribir tu comentario
Curso de Django [Empieza Gratis]

Curso de Django [Empieza Gratis]

Crea sitios web fácilmente. Aprende sobre la conectividad y la extensibilidad que ofrecen los nuevos componentes de Django: el framework de desarrollo Web para Python más usado en la actualidad.

Curso de Django [Empieza Gratis]

Curso de Django [Empieza Gratis]

Crea sitios web fácilmente. Aprende sobre la conectividad y la extensibilidad que ofrecen los nuevos componentes de Django: el framework de desarrollo Web para Python más usado en la actualidad.