Шаблоны Django - Как я могу иметь правильный Root vs App Lookup [дубликат]

Как сделать так, чтобы представление загружало шаблоны из соответствующего приложения (корневого или дочернего)?

Вот полная структура:

  1. Создайте проект django - universe
  2. Создали приложение - назовем его earth.
  3. Создали шаблон (контейнер) для / -> universe/universe/templates/main.html
  4. Создан шаблон (контейнер) для /earth -> universe/earth/templates/main.html
  5. Создали шаблон (содержимого) для / и /earth в universe/universe/templates/index.html и universe/earth/templates/index.html соответственно.
  6. В universe/universe/views.py у меня есть:
    from django.shortcuts import render
    
    def index(request):
      context = {}
      return render(request, 'index.html', context)
    
  7. В universe/earth/views.py у меня то же самое:
    from django.shortcuts import render
    
    def index(request):
      context = {}
      return render(request, 'index.html', context)
    

Когда я запускаю это, я получаю ошибку TemplateDoesNotExist at /. Почему шаблоны не найдены?

Если я обновляю universe/universe/settings.py

TEMPLATES = [
  ...
  'DIRS': [
    BASE_DIR / 'universe/templates'
  ]
]

подбираются только шаблоны universe.

Как я могу убедиться, что при обращении к правильному index.html на основе приложения?

Вернуться на верх