flask还是django哪个更适合初学者,python django和flask
00-1010
Django功能大而全。Flask只包含了配置Django的一站式解决方案的基本思想,可以让开发者在开发之前不用花费大量的时间在选择应用的基础设施上。Django内置了模板、表单、路由、认证、基本数据库管理等功能。相反,Flask只是一个内核,默认依赖两个外部库:Jinja2模板引擎和Werkzeug WSGI工具集,其他很多功能都是以扩展的形式嵌入的。
Flask比Django更灵活。在使用Flask构建应用之前,选择组件会给开发者带来更多的灵活性。有些应用场景可能不适合使用标准的ORM(对象关系映射对象关联映射),或者需要与不同的工作流和模板系统进行交互。
Flask是在Django之后发布的,现阶段有大量的插件和扩展来满足不同的需求。Django于2005年发布,Flask成立于2010年年中。
概括
Django创建项目和应用程序
django-adminstartprojecthello _ django
Django-adminstartapphowdy12其目录结构:默认情况下,Django项目和应用创建后,只包含空的模型和模板文件。但是,Flask创建项目后,目录中没有需要我们手动创建的文件,所以没有像Django那样的组件分离。对于需要分离组件的项目,Flask有蓝图。
例如,可以通过将与用户相关的函数放在user.py中,将与销售相关的函数放在ecommerce.py中来构建应用程序
Django将一个项目划分为独立的应用,而Flask认为一个项目应该是一个单独的应用,有一些视图和模型。当然,我们也可以像Flask中的Django一样复制项目结构。
00-1010给出Django模板的一个例子
!view.html
顶手推车
divclass=col-md-10
!- moretopbarthingsgohere -
/div
{%ifuser%}
divclass=col-md-2whoami
youareloggedinas { { user . full name } }
/div
{%endif%}
/div
{ % forwidgetininventory % }
Li href=/widget/{ { widget . slug } }/ { { widget . display name } }/a/Li
{ % end for % } 123456789101121314 Flask默认使用Django启发的名为Jinjia2的模板。事实上,上面所有Django模板的例子在Jinjia2中都运行良好。
项目区别
!姜戈
div class= categories categories : { { post . categories join : , }}/div
!金佳
class= categories categories 3360 { { post . categories join(,)}}/div 12345在金佳的模板语言中,可以向过滤器传递任意数量的参数,因为金佳看起来就像调用Python函数一样,将参数括在括号中。Django使用冒号来分隔过滤器名称和参数,因此只能传递一个参数。
Flask的Jinja模版 for-else-endfor
{%foritemininventory%}
div class= display-item { { item . render()} }/div
{%else%}
divclass=显示-警告
h3Noitemsfound/h3
可能是pTryanothersearch?/p
/div
{ % end for % } 12345678Django模版 for-empty-endfor
{%foritemininventory%}
div class= display-item“{ item . render } }/div
{%empty%}
divclass=显示-警告
h3Noitemsfound/h3
可能是pTryanothersearch?/p
/div
{%endfor%}12345678除了上面的语法差异,Flask还提供了很多独特的上下文变量(url_for、get _ flashed _ messages()等。)
更多python相关文章,请关注python自学网。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。