【问题标题】:Reusing Flask blueprints: extend or rewrite?重用 Flask 蓝图:扩展还是重写?
【发布时间】:2016-01-08 05:59:24
【问题描述】:

我是 Flask 蓝图的新手,我想知道实现 flask-social-blueprintflask-users-blueprint 等可重用蓝图的最佳实践是什么?我应该:

  • 将代码复制粘贴到我的项目中并覆盖我想要更改的任何内容,或者
  • 从蓝图导入,然后在单独的模块中编写覆盖函数?

换句话说,蓝图是否意味着是样板文件,可以让您免于打字,或者它们是否像 Flask“扩展”和其他 Python 模块一样可以在不更改原始代码的情况下导入?

【问题讨论】:

  • @SeanVieira 我看到了这个类比。我想我的问题是:我应该使用标准的现成模具并凿出结果,还是在将模具用于自己的项目之前对其进行改造?
  • 这取决于项目,但如果它是一个实际库而不仅仅是一个示例,那么您应该将其添加为依赖项,导入蓝图等并将其注册到您的应用程序中,覆盖行为根据需要 - 它是扩展,而不是代码 sn-p ;-)
  • @SeanVieira 谢谢,我认为这或多或少回答了我的问题。也许将其添加为答案,以便我可以标记它? :-)

标签: python flask


【解决方案1】:

这取决于项目,但如果它是一个实际库而不仅仅是一个示例,那么您应该将其添加为依赖项,导入蓝图等并将其注册到您的应用程序中,并根据需要覆盖行为。蓝图是您的应用程序的扩展,而不是像(例如)HTML5 Boilerplate 那样的可下载代码 sn-p。

引用the documentation:

Flask 中的蓝图是......可以在应用程序上注册的一组操作,甚至可以多次注册。蓝图的基本概念是它们记录在应用程序上注册时要执行的操作。

【讨论】:

    猜你喜欢
    • 2011-11-24
    • 1970-01-01
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    • 2012-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多