我如何从其他应用TemplateDoesNotExist。加载静态文件和模板Django项目结构
这里产生的模板有点糊涂是我的项目结构的图片:
我得到这个错误:
TemplateDoesNotExist at/
home.html
家/ views.py:
class HomeView(generic.TemplateView):
template_name = "home.html"
Settings.py
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
os.path.join(BASE_DIR, "home/static/home/js"),
os.path.join(BASE_DIR, "home/static/home/images"),
os.path.join(BASE_DIR, "home/static/home/css"),
)
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'templates'),
)
项目的/ home/urls.py:
from django.conf.urls import patterns, url
from home.views import HomeView
urlpatterns = patterns('',
url(r'^$', HomeView.as_view(), name="home"),
)
项目/ urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'', include("home.urls", namespace="home")),
)
项目/模板/家庭/ index.html的
<!DOCTYPE html>
<html>
<head lang="en">
...
<!-- Fonts -->
<link href='http://fonts.googleapis.com/css?family=Lobster' rel='stylesheet' type='text/css'>
<!-- Custom CSS -->
<link href="{{ STATIC_URL }}boothie.css" rel="stylesheet">
<!-- Custom JS-->
<script src="{{ STATIC_URL }}boothie.js"></script>
<title>Boothie</title>
</head>
<body>
<div class="container">
...
</div>
</head>
{% block content %}{% endblock %}
</body>
</html>
项目的/ home /模板/家/ home.html的:
{% extends index.html %}
{% block content %}
...
<script src="{{ STATIC_URL }}js/jquery.easing.1.3.js"></script>
<script src="{{ STATIC_URL }}js/boothie.js"></script>
{% endblock %}
除非它有错字,否则你的模板被称为'home/index.html'而不是'home.html'。 – 2014-12-08 04:40:49
@BurhanKhalid我在我的'家'应用程序中有一个名为home.html的文件。我想我的命名习惯很糟糕。在我的项目/模板中,有一个名为home的目录,其文件为'index.html' – Liondancer 2014-12-08 04:45:38
它位于'home/templates/home.html'中吗? – 2014-12-08 04:49:08