使用Django的单页应用程序

时间:2014-08-19 21:18:03

标签: django django-rest-framework single-page-application pjax

我使用django-easy-pjax制作单页面应用程序:

base.html文件:

{% load staticfiles %}
<script type="text/javascript" src="{% static '/static/js/jquery.js' %}"></script>
<script src="{% static '/static/js/jquery.pjax.js' %}"></script>

{% block side%}
It is {% now "c" %} 
<br><br>
<a href="/uu/">Next Page</a>
<br/></br>
{%endblock side%}


{%block main%}
{%endblock main%}

1.HTML:

{% extends "base.html"|pjax:request %}
{%block main%}
If time doesnot change Easy pjax is working
{%endblock main%}

views.py:

from django.shortcuts import render
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.template.response import TemplateResponse

def index(request):
  return render_to_response('base.html', {}, context_instance = RequestContext(request))

def index1(request):
  return render_to_response('1.html', {}, context_instance = RequestContext(request))

urls.py:

    (r'^pjax/$', 'app_name.views.index'),
    (r'^uu/$', 'app_name.views.index1'),

但是当我点击下一页时,时间网址会发生变化,内容会被加载,但时间也会发生变化,这意味着easy-pjax无法正常工作。我应该在代码中进行哪些更正?我添加了pjax_base.html模板在模板目录。但是pjax_base.html的内容应该是什么?我是否需要在服务器端配置其他任何类似HTTP头的内容?如果是,如何?

1 个答案:

答案 0 :(得分:4)

使用django-easy-pjax是一个坏主意。要使用django创建SPA,应该使用REST框架。我切换到了Django REST Framework。我使用Django使用Django + DjangoRESTFramework + AngularJS for SPA

`