Flask Web Development:Developing Web Applications with Python/Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

Flask Web开发:基于Python的Web应用开发实战

在决定建站上地图识别应用的时候一口气买了很早之前就想入的这本flask教程和angularjs的教程。
可以与之前发布的best practice of flask application这篇文章关联来看。

基于自己选择python作为主要编程语言,机器学习后台的python编码,成熟的机器学习python包—— theano, tensorflow 选则flask作为网站编辑语言。
早先接触到全栈工程师概念的时候就已经有python先驱在这个方向勇往直前,相较于tornado和django,
个人更习惯flask修饰符的表达方法。这些机缘巧合累计起来促成了这个结果。

言归正传,这本从零开始的教程非常受用,足够让一个有Python基础的开发者快速上手flask,
利用现有比较成熟的三方flask pkg进行网站开发。

使用python做后端开发比较知名的应用当属twitter和知乎了。

但是完成这个网站的基本功能后也感知到了jinja2模板的局限,尤其是传参和前端效果的实现上。
当然这方面也有个人能力尚未覆盖前端,js造诣不够。
因此之后也有安排通过vuejs加强对js的进一步学习。

写了这么多感觉没有点书里边的内容,也不想贴代码,总之还是跟着书里的步骤过一下的感觉最直观。
这种体验是难以言喻的。

key points

  • flask做到了基本的MVC分离,无论是理论上还是实际文件上
  • 通过models进行对象的定义,数据库的定义和管理
  • 通过views来编辑网站的交互控制,以flask的角度是主要以后端编程来完成大部分的function, 其中包含大部分前端的功能
  • 通过修饰符对html文件及路径进行绑定,前端文件遵从jinj2模板使用html文件编辑
  • 数据库是sqlite3, 主要以sqlachemy进行脚本语言操作,通过migrate管理数据库版本和备份
  • 使用manager.py进行网站层级的管理维护,集成临时shell调试环境和运行指令
  • 使用shell环境进行用户注入和数据库维护
  • 实际部署的时候更倾向于使用gunicorn和nginx进行部署

archive

  • 总之在这次实践中确实感受到了flask的轻量与可扩展性,例如bootstrap-flask直接导入带bootstrap样式的jinja2前端模板
  • 需要急需补前端的知识继续打磨界面和交互功能
  • bootstrap模板很好用
  • 注入账户的时候需要”User(confirmed=True)”,避免未配置邮件服务器发不出来认证邮件
分享到 评论