在模板中显示 json 字典值

发布于 2024-12-09 14:12:45 字数 928 浏览 1 评论 0原文

我正在 django1.3 中使用 jquery 进行 ajax,效果很好。我使用 jquery load 方法来填充模板。

当用户点击按钮时,我得到一个异步的 json 对象。我将它作为字典传递给另一个模板(我将其加载到第一个模板的 div 内)。但我不知道我如何在模板中显示它。(我尝试在模板页面中传递json),但它会导致错误。 任何人都可以建议如何解决这个问题吗?

因此,我使用正常方式解析视图中的 json,并使用 render_to_response() 中的 locals() 方法将其传递给模板。这是一个好的方法吗?

testjqyery.html
$(document).ready(function() {
    $('#save').click(function(e)
    {
        e.preventDefault();         
        $( '#results' ).html( ' ' ).load( '{% url t %}'  );            
    });
    <div id="results"></div>

视图.py

def testupdater(request):
// getting json from server
//contents_json = json.loads(...)
json_data = {'json_dict': contents_json}
return render_to_response( 'results.html' ,json_data,context_instance=RequestContext(request))

结果.html

{% if json_dict|length %}

{% else %}
{% endif %}

I am doing ajax using jquery in django1.3,well its works fine. Am using jquery load method to fill a in a template.

I get a json object asychrosily when user cliks in a button.I pass it to another template(which i loading inside the div of first template ) as a dictionary. But am unaware of how I display it in template.(I tried to pasres json in template page),but its leads to error.
Can any one suggest How can solve the problem?

So I used normal way parse json in view and pass it to template by using the method locals() in render_to_response(). Is it a good approch?

testjqyery.html
$(document).ready(function() {
    $('#save').click(function(e)
    {
        e.preventDefault();         
        $( '#results' ).html( ' ' ).load( '{% url t %}'  );            
    });
    <div id="results"></div>

views.py

def testupdater(request):
// getting json from server
//contents_json = json.loads(...)
json_data = {'json_dict': contents_json}
return render_to_response( 'results.html' ,json_data,context_instance=RequestContext(request))

results.html

{% if json_dict|length %}

{% else %}
{% endif %}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

流殇 2024-12-16 14:12:45

试试这个方法

from django.utils import simplejson

data = []
data.append({"msg": 'Hi this message'})
json = simplejson.dumps(data)
return HttpResponse(json, mimetype='application/json')

try it this way

from django.utils import simplejson

data = []
data.append({"msg": 'Hi this message'})
json = simplejson.dumps(data)
return HttpResponse(json, mimetype='application/json')
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文