zoukankan      html  css  js  c++  java
  • django的小操作,查询效率up, 引用art-template模板+djangorestframework

    Part1: 提高查询效率
    newses = News.objects.select_related('category', 'author').get(id=1) # category和author字段为News表的外键, 使用select_related查询,会等待前端请求完毕后一次性查询出所有的数据

    前端:
    {% for news in newses %}
      {{ news.category.name }}
      {{ news.author.username }} # 这两个字段为外键
    {% endfor %}

    这样能减少查询的次数,提高效率

    Part2:
    后端通过djangorestframework传送art-tenplate模板需要的数据
    详情下一篇 。。https://www.cnblogs.com/tangpg/p/9300256.html

    art-template模板
    引入template-web.js文件,官网Github中lib文件夹中,can copy after Raw
    并声明django不解析该模板,
    each模块的使用,
    {*
        用一个type="text/html"的script标签存放模板:
        HTML代码
    *}
    {% verbatim %} 向django声明不解析该模板
    <script id="test" type="text/html"> <h1>{{title}}</h1> <ul> {{each list as value i}} <li>索引 {{i + 1}} :{{value}}</li> {{/each}} </ul> </script>
    {% endverbatim %} // 渲染模板 js代码 var data = { title: '标签', list: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他'] }; var html = template('test', data); // document.getElementById('content').innerHTML = html;

    // 指定添加到box这个地方
    var box = $('#box-for-art-template-model');
    box.append(html)

    django 的 model的pk属性代表model的primary key

     New.pk = New.id

    class New(models.Model):
         
        id = models.IntegerField(primary_key=True)
        name = models.CharField(max_length=100)
  • 相关阅读:
    C#获取HTML文件指定DIV内容
    剔除editor编辑器中的HTML标签
    ASP.NET MVC 在WebService中Token的使用方法
    MVC如何在单独的类库中添加区域
    原来写插件还可以选MEF
    EF CodeFirst学习
    .Net EF 学习之model first
    sql分页存储过程,带求和、排序
    软实力
    微软的XML可视化编辑器:XML Notepad 2007
  • 原文地址:https://www.cnblogs.com/tangpg/p/9299415.html
Copyright © 2011-2022 走看看