无法在Django应用程序中显示html文件

2024-03-29 05:36:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的views.py文件中,我现在有这个

from django.contrib import messages
from django.http import HttpResponse 
from django.core.urlresolvers import reverse
from django.shortcuts import redirect, get_object_or_404, render
from django.views.generic import ListView, DetailView
from django.views.generic.edit import CreateView, UpdateView, DeleteView
from django.views.generic.base import View, TemplateView
from models import *
from forms import *

class test(TemplateView):
    def test(request):
        return HttpResponse("test")

    def get_template_names(self):
        return ["myapp/test.html"]

urls.py

from django.conf.urls import patterns, url
from views import test

urlpatterns = patterns('',
    url(r'$', test.as_view(), name='test'),
)

test.html

{% extends "index.html" %}

{% block content %}
   <P> HELLO </P>
{% endblock %}

除了网站加载时什么都没有显示!你知道吗

那个索引.html文件加载很好,因为我加载的html文件正在扩展它。但当我点击连接到中的url“test”的按钮时网址.py没有更新。这个文本.html文件中只有文本“hello world”。你知道吗


Tags: 文件djangofrompytestimporturlget
2条回答

urls.py中,需要正确导入视图:

from django.conf.urls import patterns, url
from yourapp.views import test

urlpatterns = patterns('',
    url(r'$', test.as_view(), name='test'),
)

在您看来,您需要修复类,因此:

class test(TemplateView):
    template_name = 'myapp/test.html'

您不应该使用^{}

如果这确实是您要做的所有事情(即,呈现模板),那么您可以直接在您的应用程序中导入TemplateView网址.py地址:

from django.conf.urls import patterns, url
# from yourapp.views import test
from django.views.generic.base import TemplateView

urlpatterns = patterns('',
    url(r'$', TemplateView.as_view(template_name='myapp/test.html'), name='test'),
)

试着这样写你的观点:

class Test(TemplateView):
    template_name = "myapp/test.html"

这是设置模板名称的推荐方法。你知道吗

相关问题 更多 >