作家
登录

Python Web框架:Django vs Flask vs Pyramid

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

对于各部分须要更多分别的项目,Flask有blueprints。例如,你可以将所有效户相干的函数放在users.py中,将发卖相干的函数放在ecommerce.py中,然后在site.py中添加引用它们来构造化你的Flask应用。我们不会深刻这个功能,因为它超出了我们展示demo应用的需求。

4.2 Pyramid

Pyramid 的 bootstrapping对象叫 pcreate,是Pyramid的构成部分. 之前的 Paste 对象套装供给了 bootstrapping ,然则大年夜那之后被 Pyramid专用对象链替代了。

  1. $ pcreate -s starter hello_pyramid # Just make a Pyramid project 
  1. hello_pyramid 
  2.  
  3. ├── CHANGES.txt 
  4.  
  5. ├── development.ini 
  6.  
  7. ├── MANIFEST.in 
  8.  
  9. ├── production.ini 
  10.  
  11. ├── hello_pyramid 
  12.  
  13. │   ├── __init__.py 
  14.  
  15. │   ├── static 
  16.  
  17. │   │   ├── pyramid-16x16.png 
  18.  
  19. │   │   ├── pyramid.png 
  20.  
  21. │   │   ├── theme.css 
  22.  
  23. │   │   └── theme.min.css 
  24.  
  25. │   ├── templates 
  26.  
  27. │   │   └── mytemplate.pt 
  28.  
  29. │   ├── tests.py 
  30.  
  31. │   └── views.py 
  32.  
  33. ├── README.txt 
  34.  
  35. └── setup.py  

作为最后描述的框架,Pyramid的bootstrapper异常灵活. 不局限于一个默认的法度榜样;pcreate 可以应用随便率性数量的项目模版. 包含我们膳绫擎用到的pcreate琅绫擎的”starter”的模版, 还有 SQLAlchemy- ,ZODB-支撑scaffold项目. 在 PyPi可以发明已经为Google App Engine, jQuery Mobile, Jinja2 templating, modern frontend frameworks做好的scaffolds, 还有更多~

4.3 Django

Django 也有本身的 bootstrap 对象, 内置在 django-admin 中.

  1. django-admin startproject hello_django 
  2.  
  3. django-admin startapp howdy # make an application within our project  

Django 默认只在项目中创建 空白的 model 和模板文件, 供新手参考的示范代码不多. 此外, 开辟者在宣布应用法度榜样的时刻, 还要本身设备, 这也是个麻烦.

bootstrap 对象的缺点是没有指导开辟者若何打包应用. 对于那些没有经验的新手来说, 第一次安排应用将是个很头疼的问题. 像 django-oscar 如许的大年夜社区, 项目都是打包好了, 放在 PyPi 上供大年夜家安装. 然则 Github 膳绫擎的小项目缺乏同一的打包方法.

5. 模板

一个Python应用可以或许响应HTTP请求将是一个巨大年夜的开端,然则有可能你的大年夜多半用户是没有兴趣应用curl与你的web应用交互的。荣幸的是,这三个竞争者供给了应用自定义信息填充HTML的办法,以便让大年夜慌绫乔可以或许享受时髦的Bootstrap 前端。

模板让你可以或许直接向页面注入动态信息,而不是采取AJAX。你只须要一次请求就可以获取全部页面以及所有的动态数据,这对用户体验来说是很好的。这对于手机网站来说尤其重要,因为一次请求花费的时光会更长。

5.1 Django

我们应用的例子正如写的那么简单,假设我们有一个包含了用户名的funllname属性的user对象。在Python中我们如许向模板中传递当前用户:

拥有这个模板的高低文很简单,传入一个Python对象的字典和模板应用的数据构造。如今我们须要在页面上衬着他们的名字,以防页面忘了他们是谁。

  1. <!-- view.html --> 
  2.  
  3. <div class="top-bar row"

      推荐阅读

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

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


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

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

关键词: 探索发现

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

网友点评
自媒体专栏

评论

热度

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