jju*_*9jj 23 python django static-html
我还没想出如何用纯HTML代码和/或HTML + JavaScript + CSS呈现网站.
我试着加载一个HTML文件,只是说:Hello World.
我知道我也可以用Django做到这一点,但后来我想用CSS + JavaScript + HTML显示我的网站.
在视图文件中,我运行此代码:
# Create your views here.
from django.http import HttpResponse
from django.template import Context, loader
def index(request):
template = loader.get_template("app/index.html")
return HttpResponse(template.render)
Run Code Online (Sandbox Code Playgroud)
但网站显示的唯一内容是:
>
Cés*_*pia 18
如果您的文件不是django模板而是普通的html文件,这是最简单的方法:
from django.shortcuts import render_to_response
def index (request):
return render_to_response('app/index.html')
Run Code Online (Sandbox Code Playgroud)
ust*_*tun 16
你没有在render那里调用这个方法,是吗?
相比:
template.render
template.render()
Run Code Online (Sandbox Code Playgroud)
Fac*_*sco 12
如果您的CSS和JS文件是静态的,请不要使用Django来提供它们,或者将它们作为静态文件提供
对于你的html,你可以做同样的事情,如果它只是一些没有任何动态内容的固定文件.您还可以在TemplateView中使用通用视图,只需在此处添加如下行urls.py:
url(r'^path/to/url', TemplateView.as_view(template_name='index.html')),
Run Code Online (Sandbox Code Playgroud)
小智 8
通过使用HttpResponse你可以只发送数据,如果你想要html文件,那么你必须使用render或render_to_response通过以下方式...
from django.shortcuts import render
def index(request):
return render(request, 'app/index.html')
Run Code Online (Sandbox Code Playgroud)
要么
from django.shortcuts import render_to_response
def index (request):
return render_to_response('app/index.html')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61241 次 |
| 最近记录: |