Django makemigrations - Нет установленного приложения с меткой '<appname>'

Новичок в Django Web Frameworks здесь... когда я пытаюсь запустить python manage.py makemigration courses, он выдает эту ошибку:

$ python manage.py makemigrations courses
←[31;1mNo installed app with label 'courses'.

Вот что у меня есть в settings.py для INSTALLED_APPS

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

Это находится в моем файле apps.py:

from django.apps import AppConfig
class CoursesConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'Courses'

Вот что дает python manage.py showmigrations:

$ python manage.py showmigrations
←[1madmin
←[0m [X] 0001_initial
 [X] 0002_logentry_remove_auto_add
 [X] 0003_logentry_add_action_flag_choices
←[1mauth
←[0m [X] 0001_initial
 [X] 0002_alter_permission_name_max_length
 [X] 0003_alter_user_email_max_length
 [X] 0004_alter_user_username_opts
 [X] 0005_alter_user_last_login_null
 [X] 0006_require_contenttypes_0002
 [X] 0007_alter_validators_add_error_messages
 [X] 0008_alter_user_username_max_length
 [X] 0009_alter_user_last_name_max_length
 [X] 0010_alter_group_name_max_length
 [X] 0011_update_proxy_permissions
 [X] 0012_alter_user_first_name_max_length
←[1mcontenttypes
←[0m [X] 0001_initial
 [X] 0002_remove_content_type_name
←[1msessions
←[0m [X] 0001_initial

Также, почему у меня есть эти символы '←[31;1m' и '←[0m' в выводе на моем терминале? Я использую VSCode

Спасибо!

Пожалуйста, обновите ваш массив installed_app следующим образом

INSTALLED_APPS = [
    'courses.apps.CoursesConfig',
    .....
]

Если вы сохраните его таким, он будет работать

   INSTALLED_APPS = [
        'courses',
        .....
    ]

Это сработало для меня. Используйте тот же регистр в имени.

from django.apps import AppConfig
class CoursesConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'courses'  # Instead of 'Courses'

Затем в вашем settings.py

INSTALLED_APPS = [
    ...
    'courses',  # or courses.apps.CoursesConfig
    ...
]
Вернуться на верх