我今天刚刚开始使用Django,目前在文档中有点迷失。
我想创建一个单页面应用程序。我希望服务器为任何不匹配" / api / *"的请求返回单个index.html。
有人可以告诉我Django最标准/可接受的方式是什么?我花了一些时间尝试谷歌进行类似的项目,但到目前为止还没有运气。
答案 0 :(得分:1)
要“返回单个index.html”,您需要创建一个呈现index.html
的视图。并路由您想要的网址(在您的情况下所有网址都不匹配/api/
)。我将尝试帮助一个例子:
模板/ index.html中
<!doctype html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h1>Hello world!</h1>
</body>
</html>
views.py
from django.shortcuts import render
def index(request):
return render(request, 'index.html')
urls.py
from django.conf.urls import url
from your_project.your_app import views
urlpatterns = [
url(r'^api/', views.api, name='api'),
url(r'^.*$', views.index, name='index'),
]
顺便说一句,如果是这种情况,你想渲染静态HTML,我不认为django是你正在寻找的工具。