[Django] settings의 INSTALLED_APPS에 앱등록

반응형

django Logo

 

Contents

     

    1. 배경

    python manage.py startapp <app 이름> 으로 앱을 만들었다면, django settings.py에서 해당 app을 등록해야 합니다. INSTALLED_APPS라는 리스트에 작성함으로써 앱을 등록하는데요. 어떨 때는 app이름만 작성하고, 어떨때는 app이름.apps.Config 형식으로 작성합니다. 어떤 차이가 있을까요?

     

    2. 해결

    python manage.py startapp blog라는 앱을 만들었습니다. blog의 apps.py를 보면 아래와 같습니다.

    blog apps

    상위에 BlogConfig라는 클래스가 있습니다. INSTALLED_APPS리스트에 "blog.apps.BlogConfig"를 등록하는 것은 정확히는 blog폴더의 apps.py의 BlogConfig 클래스를 등록한다는 의미입니다. 그런데 클래스 내부를 보면 name='blog'라고 되어있습니다. 이름을 blog라고 지정했으니 INSTALLED_APPS에 "blog"라고 적으면, 내부적으로는 "blog.apps.BlogConfig"가 불러와진다고 이해하면 되겠습니다.

    settings.py의 INSTALLED_APPS

     

    Reference
    1. django Logo: https://codecondo.com/jobs-for-django-developers/django-framework-logo/
    2. Content: https://onsil-thegreenhouse.github.io/programming/django/web_programmig/2017/10/14/django_tutorial2_ch1-2/
    반응형

    댓글

    Designed by JB FACTORY