如何在 Django 中像应用程序一样从配置中注册 Flask 蓝图?

2024-05-12

如何从我的配置中注册 Flask 蓝图,就像 Django 中的应用程序一样?

我想在配置文件中定义蓝图,它将自动注册

#config.py
BLUEPRINTS = (
'news',
'files',
)

实际上我一直在一个暂定名为的项目中勾勒出类似的东西臀部口袋 https://github.com/svieira/HipPocket。这基本上与 @HighCat 给你的答案相同,除了它使用 Python 的打包系统而不是config.py文件(尽管它可以扩展为从配置文件自动加载 -issues https://github.com/svieira/HipPocket/issues and 拉取请求 https://github.com/svieira/HipPocket/pulls非常欢迎。)

所以在 Hip Pocket 中你会这样做(参见hip_pocket.tasks https://github.com/svieira/HipPocket/blob/master/hip_pocket/tasks.py了解其工作原理):

from flask import Flask
from hip_pocket.tasks import autoload

app = Flask(__name__)
autoload(app)

autoload遍历一个包(默认情况下名为“apps”,尽管您可以通过传入关键字 arg 来更改它apps_package) 寻找flask.Blueprint要在应用程序上注册的对象(默认情况下,它会查找名为的符号routes在名为的模块中routes在它找到的每个子包中,但这些默认值也可以更改。)您的文件夹布局might看起来像这样:

+ you_app
. . . . __init__.py
. . . . app.py
. . . . + apps
        . . . . __init__.py
        . . . . routes.py # contains the declaration `routes = Blueprint(...)`
        . . . . + news
                . . . . __init__.py
                . . . . routes.py     # Ditto
                . . . . some_module.py
        . . . . + files
                . . . . __init__.py
                . . . . routes.py     # Ditto
                . . . . # etc.

或者,如果您想使用基于配置的加载器,您可以这样做:

 from flask import Flask
 from werkzeug.utils import import_string

 app = Flask(__name__)
 app.config.from_object("your_app.config")

 for tool_path in app.config["BLUEPRINTS"]:
     tool = import_string(tool_path)
     app.register_blueprint(tool)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Django 中像应用程序一样从配置中注册 Flask 蓝图? 的相关文章

  • 在二维数组中进行所有可能的组合

    我正在尝试制作具有所有可能组合的 4x4 16 像素黑白图像数组 我制作了以下数组作为模板 template 0 0 0 0 start with all white pixels 0 0 0 0 0 0 0 0 0 0 0 0 然后我想迭
  • 需要根据数据框中的行号应用不同的公式

    我正在努力在数据框中找到某种移动平均值 该公式将根据正在计算的行数而变化 实际场景是我需要计算Z列 Edit 2 以下是我正在使用的实际数据 Date Open High Low Close 0 01 01 2018 1763 95 176
  • 按每个元素中出现的数字对字符串列表进行排序[重复]

    这个问题在这里已经有答案了 我有一个脚本 其目的是对不断下载到服务器上的空间数据集文件进行排序和处理 我的列表目前大致如下 list file t00Z wrff02 grib2 file t00Z wrff03 grib2 file t0
  • 学习Python中的解析器

    我记得我读过有关解析器的内容 您只需提供一些示例行 它就知道如何解析某些文本 它只是确定两条线之间的差异 以了解可变部分是什么 我以为它是用 python 写的 但我不确定 有谁知道那是什么图书馆吗 可能你的意思是模板制作器 http co
  • 有什么好的适用于 Google App Engine 应用程序的 AJAX 框架吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试在我的 Google App Engine 应用程序中实现 AJAX 因此我正在寻找一个好的
  • 在 Python 中延迟转置列表

    所以 我有一个延迟生成的可迭代的三元组 我试图弄清楚如何将其转换为 3 个可迭代对象 分别由元组的第一个 第二个和第三个元素组成 然而 我希望这件事能懒惰地完成 所以 举例来说 我希望 1 2 3 4 5 6 7 8 9 将变成 1 4 7
  • caffe安装:opencv libpng16.so.16链接问题

    我正在尝试在 Ubuntu 14 04 机器上使用 python 接口编译 caffe 我已经安装了 Anaconda 和 opencvconda install opencv 我还安装了咖啡中规定的所有要求 并更改了注释块makefile
  • 创建 xyz 海拔数据的曲面图

    我正在尝试用 python 创建一座山的表面图 其中我有一些 xyz 数据 最终结果应该类似于that https i stack imgur com rKQV0 png 该文件的格式如下 616000 0 90500 0 3096 712
  • 在 python 中发送标头[重复]

    这个问题在这里已经有答案了 我有以下 python 脚本 我想发送 假 标头信息 以便我的应用程序就像 Firefox 一样运行 我怎么能这么做呢 import urllib urllib2 cookielib username passw
  • NumPy 数组与 SQLite

    我在 Python 中见过的最常见的 SQLite 接口是sqlite3 但是有什么东西可以很好地与 NumPy 数组或 rearray 配合使用吗 我的意思是 它可以识别数据类型 不需要逐行插入 并提取到 NumPy rec 数组中 有点
  • DataFrame.loc 的“索引器太多”

    我读了关于切片器的文档 http pandas pydata org pandas docs stable advanced html using slicers一百万次 但我从来没有理解过它 所以我仍在试图弄清楚如何使用loc切片Data
  • 在多核上运行 python 线程

    我知道Python 2 7不允许在不同的内核上运行多个线程 你需要使用multiprocessing模块以实现某种程度的并发性 我正在看concurrent futuresPython 3 4 中的模块 是否使用ThreadPoolExec
  • 无法使用Python请求会话模块登录网站

    我刚刚开始进行网络抓取 对于我的第一个项目 我尝试使用 requests Session 登录 artofproblemsolving com 并访问另一个用户的帐户 这是我的代码 import requests LOGIN URL htt
  • matplotlib:渲染到缓冲区/访问像素数据

    我想使用 matplotlib 生成的图作为 OpenGL 中的纹理 到目前为止 我遇到的 matplotlib 的 OpenGL 后端要么不成熟 要么已经停止使用 所以我想避免使用它们 我当前的方法是将图形保存到临时 png 文件中 并从
  • 右键单击 QPushButton 上的 contextMenu

    对于我的应用程序 我在 Qt Designer 中创建了一个 GUI 并将其转换为 python 2 6 代码 关于一些QPushButton 与设计器创建 我想添加右键单击上下文菜单 菜单选项取决于应用程序状态 如何实现这样的上下文菜单
  • 增强迪基-富勒测试中的 BIC 在 Python 中到底是如何工作的?

    这个问题是关于 statsmodels tsa stattools python 库 adfuller 中的增强迪基 富勒测试实现 原则上 AIC 和 BIC 应该计算一组可用模型的信息标准 并选择最好的模型 信息损失最低的模型 但它们在增
  • 解析整数集的字符串并列出间隔

    I have 2 5 7 9 12 string 我想从中获取 2 5 7 8 9 12 列表 python中有没有内置的函数 Thanks UPD 我想 直接的答案是No 不管怎样 谢谢你的 片段 使用一个 建议者斯文 马尔纳克 s 2
  • 如何将 django ModelForm 字段显示为不可编辑

    接受我的初步教训django ModelForm 我想让用户能够编辑博客中的条目 BlogEntry has a date postedTime title and content 我想向用户展示一个编辑表单 其中显示所有这些字段 但仅包含
  • 如何将Python包从旧版本安装到新版本?

    我正在使用 python 3 7 最近在 Linux 中安装了 python 3 8 是否有任何 bash 命令或脚本可以获取 3 7 的所有软件包列表并在 3 8 版本中一一安装 我想避免每个包裹都手工完成 注意 我将它们安装在我的系统中
  • 在自定义 keras 层的调用函数中传递附加参数

    我创建了一个自定义 keras 层 目的是在推理过程中手动更改前一层的激活 以下是基本层 它只是将激活值乘以一个数字 import numpy as np from keras import backend as K from keras

随机推荐

  • 如何在 powershell 中使用正则表达式选择“catch”代码块?

    我正在尝试分析多个目录中的大量 powershell 脚本 并且希望将任何 Catch 代码块拉入列表 变量中 我正在尝试编写一个正则表达式来选择以下格式的任何块 Catch write Host Function MyInvocation
  • C++ 私有静态成员变量

    此 C 代码在编译时产生链接器错误 A h class A public static void f private static std vector
  • 如何确定服务器是否支持 Range 标头?

    我一直在尝试使用 Range 标头值从特定点流式传输音频 但我总是从一开始就得到歌曲 我正在通过程序执行此操作 因此不确定问题是否出在我的代码中或服务器上 如何确定服务器是否支持 Range 标头参数 Thanks 方式HTTP规范 htt
  • 在PostgreSQL中使用查询设置列类型

    优秀后answer https stackoverflow com questions 4336259 how to query the schema details of a table in postgres作者 Alexandre G
  • 'goto *foo' 其中 foo 不是指针。这是什么?

    我正在玩标签作为值 https gcc gnu org onlinedocs gcc Labels as Values html并最终得到这段代码 int foo 0 goto foo 我的 C C 经验告诉我 foo means dere
  • 在 Akka 中配置嵌套 Router

    我有一些嵌套的路由器 应创建它FromConfig 我想要的是这样的 test akka actor deployment worker router round robin nr of instances 5 slave router b
  • FileReader 在 Ionic 2 中未触发 onloadend

    我正在尝试使用 cordova file plugin 读取本地文件 目前我可以读取本地目录的内容并选择单个文件 但我在获取文件内容时遇到问题 这是我的函数 从列表中选择文件后单击按钮即可调用该函数 import window resolv
  • async wait 在调用异步方法时返回 Task> 而不是 List

    我正在尝试了解 async wait 的用法 并且研究了一些博客文章 现在我已经编写了一个测试代码 但它没有按照我期望的方式工作 我有一个返回列表的方法 private List
  • 在闪亮的应用程序中使用传单地图作为过滤器

    是否可以使用传单地图来过滤闪亮应用程序中的数据 就像在 Tableau 或 Power BI 中一样 方法是单击地图上的某个状态 然后根据条件过滤另一个图表或表格选择 None
  • 删除 ArrayList 对象问题

    我在处理作业时遇到从 ArrayList 中删除对象的问题 如果我使用 正常 for 循环 它的工作原理如下 public void returnBook String isbn for int i 0 i lt booksBorrowed
  • AJAX控制工具包加载所有脚本

    我有一个奇怪的问题 我似乎无法解决 我正在使用 AJAX 控制工具包日历延长器在我的一些页面上 尽管我通过网络找到了信息 但我似乎无法让它与常规程序一起工作ScriptManager控制 它only与一个ToolkitScriptManag
  • 如何列出所有可用的 LookAndFeel 主题?

    如何列出所有可用的 LookAndFeel 主题 我想在 JComboBox 中显示以供用户选择 这真的很简单 public static UIManager LookAndFeelInfo getInstalledLookAndFeels
  • 为什么线程比协程表现出更好的性能?

    我编写了 3 个简单的程序来测试协程相对于线程的性能优势 每个程序都会执行许多常见的简单计算 所有程序都彼此分开运行 除了执行时间之外 我还通过以下方式测量了 CPU 使用率Visual VMIDE 插件 第一个程序使用以下方法进行所有计算
  • Laravel Blade - 链/嵌入多种布局

    在我最喜欢的模板框架中 它们通常具有嵌套布局的能力 这在 Blade 中是可能的吗 例如 master blade php yield content 导航 blade php extend master
  • 在 Rails 中实现多个字段的自动完成

    我有一个应用程序 它实现了群组功能 每个小组有n名成员 此外 每个组都有一个组特定的个人资料图片 我已经能够实现组功能的自动完成 仅记住组名称 我已经参考了以下教程 http railsforum com viewtopic php id
  • 迁移时未找到 Laravel 致命错误类

    我已经跑了artisan migrate reset 我删除了一些迁移文件 因为我不再需要这些表 I ran composer dump autoload其次是artisan dump autoload I ran artisan migr
  • 如何在 C++ 中对静态缓冲区执行字符串格式化?

    我正在处理一段对性能要求非常高的代码 我需要执行一些格式化的字符串操作 但我试图避免内存分配 甚至是内部库的内存分配 在过去 我会做类似以下的事情 假设是 C 11 constexpr int BUFFER SIZE 200 char bu
  • ViewPager 的 Android Viewholder

    您好 我正在使用 ViewPager 但我现在想保留状态 而不是重新生成单元格 我注意到 viewpager 与 listviews 的自定义适配器非常相似 它们的功能类似 listview 在单元格不再出现在屏幕上后重新生成单元格中的数据
  • 在 2020 年 6 月 23 日之前打开此应用程序以确认您的订阅

    在 2020 年 6 月 23 日之前打开此应用程序以确认您的订阅 是什么原因导致的 PurchaseResult 正在返回我的购买 并确认为错误 使用以下代码 设法解决了该问题 for Purchase purchase purchase
  • 如何在 Django 中像应用程序一样从配置中注册 Flask 蓝图?

    如何从我的配置中注册 Flask 蓝图 就像 Django 中的应用程序一样 我想在配置文件中定义蓝图 它将自动注册 config py BLUEPRINTS news files 实际上我一直在一个暂定名为的项目中勾勒出类似的东西臀部口袋