Ich habe seit Tagen an diesem Problem gearbeitet und ich würde wirklich wirklich etwas Hilfe hier lieben! :)TemplateDoesNotExist at/base/index.html bei der Bereitstellung in Heroku
Ich bin brandneu zu Python, Django und Stackoverflow, also lassen Sie mich bitte wissen, ob mehr Informationen oder ein anderes Format hilfreich wäre.
Ich versuche, meine App auf Heroku bereitzustellen. Es läuft lokal, aber wenn ich versuche zu
heroku open
ich die folgende Fehlermeldung erhalten:
TemplateDoesNotExist at/ base/index.html
ich das andere geschehen gesehen habe, und ich habe folgende Korrekturen versucht, die nicht haben bearbeitetem indem index.html direkt in Vorlagen anstelle von Vorlagen> base
- die Ordnerstruktur ändern> index.html (TemplateDoesNotExist when base template is in root folder) - Dies bewirkt, dass der App lokal stoppenlief
- Hinzufügen von Vorlagen als installierte Anwendung (wie ich für den Kern tat) durch Zusatz von
(r'', include('templates.urls')),
meiner urls.py
und hinzugefügt
'templates'
zu meiner settings.py. Das hat dazu geführt, dass die App nicht mehr lokal ausgeführt wurde, also habe ich sie zurückgestellt.
- änderte mein views.py aus:
from django.shortcuts import render from django.views.generic.base import TemplateView # Create your views here. class LandingView(TemplateView): template_name = "base/index.html"
zu
from django.shortcuts import render from django.views.generic.base import TemplateView # Create your views here. class LandingView(TemplateView): template_name = [os.path.join(MAIN_DIR, 'coffeedapp2/templates')],
- , um sicherzustellen, überprüft Ich habe Standard Django 1,8x Vorlageneinstellungen (TemplateDoesNotExist at/base/index.html)
- versucht, meine views.py ändert:
from django.shortcuts import render from django.views.generic.base import TemplateView # Create your views here. class LandingView(TemplateView): template_name = "base/index.html"
zu
from django.shortcuts import render from django.views.generic.base import TemplateView # Create your views here. class LandingView(TemplateView): template_name = "base/index.html"
(TemplateDoesNotExist at/at templates/index.html)
Ich denke, dass ich kann einen SITE_ROOT oder etwas zu definieren, aber wenn ich versuche, das zu tun, hört es auf, lokal zu laufen.
ERROR:
TemplateDoesNotExist at/base/index.html Request Method: GET Request URL: https://salty-journey-18003.herokuapp.com/ Django Version: 1.9.7 Exception Type: TemplateDoesNotExist Exception Value: base/index.html Exception Location: /app/.heroku/python/lib/python2.7/site-packages/django/template/loader.py in select_template, line 74 Python Executable: /app/.heroku/python/bin/python Python Version: 2.7.12 Python Path: ['/app', '/app/.heroku/python/bin', '/app/.heroku/python/lib/python2.7/site-packages/setuptools-23.1.0-py2.7.egg', '/app/.heroku/python/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg', '/app', '/app/.heroku/python/lib/python27.zip', '/app/.heroku/python/lib/python2.7', '/app/.heroku/python/lib/python2.7/plat-linux2', '/app/.heroku/python/lib/python2.7/lib-tk', '/app/.heroku/python/lib/python2.7/lib-old', '/app/.heroku/python/lib/python2.7/lib-dynload', '/app/.heroku/python/lib/python2.7/site-packages'] Server time: Mon, 1 Aug 2016 20:50:53 +0000 Template-loader postmortem
Django tried loading these templates, in this order:
Using engine django: django.template.loaders.filesystem.Loader: /coffeedapp2/templates/base/index.html (Source does not exist) django.template.loaders.app_directories.Loader: /app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templates/base/index.html (Source does not exist) django.template.loaders.app_directories.Loader: /app/.heroku/python/lib/python2.7/site-packages/django/contrib/auth/templates/base/index.html (Source does not exist)
Einstellungen.py
""“
Django settings for coffeedapp2 project.
Generated by 'django-admin startproject' using Django 1.9.7.
For more information on this file, see
https://docs.djangoproject.com/en/1.9/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.9/ref/settings/
"""
import os
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
MAIN_DIR = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.9/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '^h)ohz4qbhu&5po084_ob8qy+1c*h^tb#jtab!p965^[email protected]&64q!'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'core',
]
MIDDLEWARE_CLASSES = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'coffeedapp2.urls'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(MAIN_DIR, 'coffeedapp2/templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_APPLICATION = 'coffeedapp2.wsgi.application'
# Database
# https://docs.djangoproject.com/en/1.9/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# Update database configuration with $DATABASE_URL.
import dj_database_url
db_from_env = dj_database_url.config()
DATABASES['default'] = dj_database_url.config()
# Honor the 'X-Forwarded-Proto' header for request.is_secure()
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
# Allow all host headers
ALLOWED_HOSTS = ['*']
# Password validation
# https://docs.djangoproject.com/en/1.9/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
# Internationalization
# https://docs.djangoproject.com/en/1.9/topics/i18n/
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.9/howto/static-files/
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(MAIN_DIR, 'coffeedapp2', 'static'),
)
coffeedapp> urls.py
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include
from django.conf.urls import patterns
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
(r'', include('core.urls')),
)
Kern> urls.py
from django.conf.urls import patterns, include, url
import core.views as coreviews
from django.conf.urls import include
urlpatterns = patterns('',
url(r'^$', coreviews.LandingView.as_view()),
)
Kern> views.py
from django.shortcuts import render
from django.views.generic.base import TemplateView
# Create your views here.
class LandingView(TemplateView):
template_name = "base/index.html"
Relevant file structure:
coffeedapp2
coffeedapp2
_init_.py
settings.py
settings.py
urls.py
wsgi.py
core
migrations
_init_.py
admin.py
apps.py
models.py
tests.py
urls.py
views.py
static
templates
base
index.html
Vielen Dank !!! Das hat funktioniert! Es kommt ohne das CSS auf Heroku durch, aber ich kann wahrscheinlich herausfinden, wie ich das beheben kann. Ich danke dir sehr!!!! – Leanne