作家
登录

Python Web框架:Django vs Flask vs Pyramid

作者: 来源: 2017-09-11 14:20:31 阅读 我要评论

 
  •  
  • <div class="categories">Categories: {{ post.categories|join(", ") }}</div>  
  • 在Jinja模板说话中,可以向过滤器传入随便率性数量的参数,因为Jinja把它算作是 应用括号包含参数的Python函数的一个调用。Django应用冒号来瓜分过滤器的名字和过滤参数,这限制了参数的数量只能为一。

    Jinjia和Django的for轮回有点类似。我们来看看他们的不合。在Jinjia2中,for-else-endfor构造能遍历一个列表,同时也处理了没有项的情况。

    1. {% for item in inventory %} 
    2.  
    3. <div class="display-item">{{ item.render() }}</div> 
    4.  
    5. {% else %} 
    6.  
    7. <div class="display-warn"
    8.  
    9. <h3>No items found</h3> 
    10.  
    11. <p>Try another search, maybe?</p> 
    12.  
    13. </div> 
    14.  
    15. {% endfor %}  

    Django版的┞封个功能是一样的,然则是用for-empty-endfor而不是for-else-endfor。

    1. {% for item in inventory %} 
    2.  
    3. <div class="display-item">{{ item.render }}</div> 
    4.  
    5. {% empty %} 
    6.  
    7. <div class="display-warn"
    8.  
    9. <h3>No items found</h3> 
    10.  
    11. <p>Try another search, maybe?</p> 
    12.  
    13. </div> 
    14.  
    15. {% endfor %}  

    5.3 Pyramid

    应用中的SECRET_KEY域是被WTForms用来创建CSRF符号的。它也被itsdangerous(Flask内包含)用来设置cookies和其他数据。

    与Flask类似,Pyramid支撑多种模板说话(包含Jinja2和Mako),然则默认只附带一个。Pyramid应用Chameleon,一个 ZPT (Zope Page Template) 模板说话的实现。我们往返头看看第一个例子,添加用户的名字到网站的顶栏。Python代码除了明白调用了render_template函数外其他看起来都差不多。

    1. @view_config(renderer='templates/home.pt'
    2.  
    3. def my_view(request): 
    4.  
    5.     # do stuff... 
    6.  
    7.     return {'user'user 

    然则我们的模板看起来竽暌剐些不合。ZPT是一个基于XML得模板标准,所以我们应用潦攀类XSLT语句来操作数据。

    哇,相当简单。最难的部分是找到合适的 SQLAlchemy数据类型,选择数据库中String域的长度。应用我们的模型也超等简单,这在于我们将要看到 SQLAlchemy萌芽语法。

    1. <div class="top-bar row"
    2.  
    3.   <div class="col-md-10"
    4.  
    5.   <!-- more top bar things go here --> 

        推荐阅读

        【慧眼】以智慧能力,助力行业智慧化转型

      【51CTO.com原创稿件】在大年夜数据、云计算、移动互联网技巧的推动下,企业将得以由&ldquo;泛数字化&rdquo;向&ldquo;聪明化&rdquo;转型,经由过程实现聪明化应用、聪明化平台、聪明化互联、聪明化计算,塑造企业顶层>>>详细阅读


      本文标题:Python Web框架:Django vs Flask vs Pyramid

      地址:http://www.17bianji.com/lsqh/37298.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)