TemplateDoesNotExist в / account / (Django с флаттером) - PullRequest
1 голос
/ 01 февраля 2020

Я пытаюсь подключить Flutter к Django. Флаттер и только Django вроде бы нормально, работают без ошибок. Но когда я пытаюсь объединить оба вместе, появляется сообщение об ошибке:

TemplateDoesNotExist в / account /

Вот причина проблемы

from django.shortcuts import render, HttpResponse


def home(request):
    return render(request, '../screens/login_screen.dart')

В нем говорится, что каталог не существует.

enter image description here

Как вы видите выше, каталог существует. В чем проблема может кто-нибудь помочь?

Шаблон:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

1 Ответ

1 голос
/ 01 февраля 2020

Что я вижу, так это то, что папка экранов находится на root, но не внутри папки учетных записей, а сама. Для этого вы должны явно указать в шаблонах конфигурации в настройках. Вы должны упомянуть "BASE_DIR," имя папки, в которой находятся шаблоны ". Вот как это должно быть написано.

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'screens')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

Во-вторых, вы должны указать путь к файлу внутри представлений таким образом.

    return render(request, 'screens/login_screen.dart', context)

Надеюсь, что это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...