代码之家  ›  专栏  ›  技术社区  ›  dagoof

Django ajax格式约定

  •  2
  • dagoof  · 技术社区  · 15 年前

    做ajax请求的正确方法是什么?我见过有人使用返回的render_to_字符串,以便他们可以使用模板语言在python中进行所有格式化。乙二醇~

    return render_to_string('calendar.html', {
    'self' : self,
    'month' : self.today.month,})
    

    $('#django_calendar_response').html(response)
    

    但我也看到有人使用dom函数在javascript中格式化他们的输出,比如

    return HttpResponse(serializers.serialize("json",
    ilst, relations=('user',)), "application/json")
    

    javascript在哪里

    items_display=function(items){
        return LI(null,
        A({'class':'userlink',
        'href':'/url/user/'+items.fields.user.fields.name},
        items.fields.user.fields.name),
    

    2 回复  |  直到 15 年前
        1
  •  2
  •   Hoff    15 年前

    我一直在为AJAX专门使用JSON,simplejson返回任何非常简单的数据,看起来如下所示:

    from django.utils import simplejson
    reply = simplejson.dumps({'comment_body': formatted_post, 'user_icon': request.user.profile.image.url })
    return HttpResponse(reply, mimetype="application/json")
    

    $.post("/postcomment/", { body: comment_body },
      function(data){
        alert(data.comment_body)
      }, "json");
    

    我并不是说这是最好的解决方案,但它被证明是非常健壮和易于处理的。。。

    希望这有帮助,

        2
  •  1
  •   basZero    15 年前

    我两者都做。有时我会有一些简短的模板片段 {% include %}

    很快,您就可以根据情况进行混搭。