【问题标题】:Client Side vs Server Side templating客户端与服务器端模板
【发布时间】:2012-07-04 07:26:04
【问题描述】:

我想知道进行 ajax 调用以更新用户名列表的最佳选择是什么。我也可以

一个。执行 ajax 调用并取回用户对象并构建 html 并将其附加到 div 中

build_html = function(obj) {
    html = 'username - ' + obj.username
    $('#container').append(html);
}

b.执行 ajax 调用并让 django 返回 html。

response = render_to_response ('user_item_template.html', {'user' : user})
return response._container

如果响应成功,我会将其附加到容器 div 中。

使用方法“b”是否有任何缺点,因为根据具体情况,在 javascript 中构建 html 可能会出现未转义字符等问题,而且一般来说很混乱。

谢谢

【问题讨论】:

    标签: django templates django-templates templating


    【解决方案1】:

    如果您请求的内容仅用于生成 HTML,则只需返回 HTML 作为响应。无需涉及客户端,并且您的服务器在生成时总是会更快,尤其是在使用缓存的情况下。

    如果您需要响应中的数据,即您可以稍后在您的 JS 中进行决策的东西,那么您需要返回 JSON 并处理任何 HTML 客户端的生成。

    基本上,如果您可以通过返回纯 HTML 来解决问题,那就去做吧。

    【讨论】:

      【解决方案2】:

      我会说这取决于...在大多数情况下(特别是如果您关心连接速度较慢的移动用户)传输较少的数据比解析 JSON 和生成 HTML 客户端所花费的时间更重要.

      推荐阅读:http://ryanflorence.com/2012/client-v-server-templating/

      【讨论】:

        猜你喜欢
        • 2012-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-27
        • 1970-01-01
        • 2019-02-08
        • 2012-06-14
        相关资源
        最近更新 更多