问题标签 [flask-appbuilder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用 sqlalchemy 添加 citext 列?
我在 postgresql 表中有一个具有 citext 数据类型的列。我想将该列添加到烧瓶 appbuilder 中的模型中。
下载sqlalchemy-citext库并添加如下。在烧瓶应用程序构建器中创建了以下模型。
当我执行相关视图时,它会给出以下错误。
有没有办法在 sqlalchemy 中添加 citext 列?
sqlalchemy - 你如何用超过 2 张桌子做多对多?
我有一个日志表,其中包含有关员工 ex 的各种信息:
员工和技能表如下所示:
我目前正在使用 Flask-Appbuilder 并且我有一个技能视图,可以显示当前所选技能的所有日志。
在 SkillLogView 中,我还想显示具有此技能的员工姓名列表。
我如何从与当前技能相关的日志中获取员工?
我不知道该怎么做,但我认为这可能是多对多的情况。问题是有 3 个表,而不是 2 个。
有没有办法用超过 2 张桌子做多对多?
还是有另一种方法来完成我想做的事情?
任何帮助表示赞赏。
python - create-admin 错误:您的包中没有 appbuilder var,您可以使用 appbuilder 参数进行配置
我遇到了命令问题:fabmanager create-admin 这是我执行的一系列步骤:
我按照我的 Windows 10 机器上的所有安装步骤安装了 flask_appbuilder。然后我使用命令下载了骨架应用程序:“fabmanager create-app”。但是当我从新创建的骨架应用程序目录发出命令:“fabmanager create-admin”时,它会抛出错误:
“您的软件包中没有 appbuilder var,您可以使用 appbuilder 参数进行配置”。
我检查了 app/ init .py 文件,它确实包含 appbuilder var。这是该文件的转储:
我尝试使用管理员权限发出相同的命令,但没有成功。根据文档,如果我们尝试使用不同的名称(除了 appbuilder),我们可以使用 --appbuilder 选项来配置它,但在我的情况下,我没有做任何这样的事情。
请建议。
flask-appbuilder - 我的 Flask-AppBuilder 项目只显示相关表的 ID,而不是它的名称,为什么?
我将使用 FAB 快速定制 IoT APP Web 作为后端。
通过运行FAB教程和文档的示例项目, http: //127.0.0.1 :5000/contactmodelview/list/ ContactView列表页面,Contact Group显示为name,黑色,而不是id。
我克隆了设计,有1:N的关系(一个账户有很多设备,就像ContactGroup有很多联系人一样),代码如下:
模型.py
视图.py
但是,DeviceView 的列表以蓝色显示相关 ID,并且显示 No Account name。但是在 DeviceDetail 视图中,会显示帐户名称。
有什么区别?
flask-appbuilder - 如何在 Flask-appbuilder 列表/详细模型视图中嵌入额外的列/外部 URL?
Flask-appbuilder 的 ModelView 可以显示模型的列表和详细信息。非常方便,为 CURD 操作节省了很多时间。
有时,除了 CURD 操作之外,应用程序还需要更多具有额外列的功能。例如,在 IoT 相关的 Device ModelView 中,除了 CRUD 之外,我还想链接到另一个实时仪表网页,或者调用设备服务器提供的 Web API 向设备发送命令。
在其他 Python 框架中,如 Tornado/Cyclone,我将手动设计一个模板页面(带有额外的按钮)和(嵌入额外的)javascript 代码。但是我还是不熟悉FAB的结构。
我可以将这些额外的操作作为其他公开方法的外部链接。并将这些链接添加到模型作为数据字段。但我认为这些设计相当丑陋。它的 URL 也太长而无法显示。
有更好的想法吗?应该重写哪些方法?
flask-appbuilder - 如何在 Flask-appbuilder 中更改 Google Chart API?
由于 Goolge Chart API 在中国境内不可用。我想换成百度的ECharts。
我应该定义另一个 ChartView,有没有关于 How To 的官方文档?
现在,我正在使用 Jinja2 模板在 html 文件末尾包含 echarts.js(lib)和自定义 js 代码(操作)以及视图(数据源)中的自定义方法。但我希望有官方的方式来做到这一点。
flask-appbuilder - 如何在flask-appbuilder中列出所有资源属于一个用户,而不是全部?
我已经简要浏览了 flask-appbuilder 的文档。在大多数示例中,ModelView 将列出所有资源。如果有相关视图,FAB 允许管理员(用户)根据其关系定义检查相关项目的详细信息。
但是,我不知道如何显示属于当前用户的资源。在其他框架中,很容易通过自定义 SQL 查询(where 语句)来实现。但除了一些数据库测试日期插入代码外,我没有从 FAB 示例中找到带有 sql 查询的演示项目。
例如,让我们想象一个 IoT 相关项目。业主拥有很多设备,一台设备可以供多个用户使用。所以,
- 作为管理员,他/她应该能够看到所有设备。
- 作为所有者,他/她应该能够看到所有设备属于。
- 作为用户,他/她应该能够看到他/她可以使用的所有设备。
模型.py
视图.py
如果我们为三个视图定义以下 URL:
- 管理员,/设备视图/列表
- 所有者,/deviceview/我的
- 用户,/deviceview/授予
但是,我不知道如何编写我的/授予的方法。通过使用 db.session.query() ?
db.session.query(Device, owner=owner)或db.session.query(Access, user=user)
或者我还没有阅读的任何文件?
flask - Flask-appbuilder RESTful API 与 Flask-RESTful API
我正在尝试在 IoT 项目中使用 Flask-appbuilder。因此,FAB 用于快速应用程序构建,我们需要为移动应用程序和 3rd 方服务供应商提供专用的 RESTful API。
在 FAB 中,作为 BaseCURDView 的子类,有一个 RESTful API 的实现。大多数 URL 被定义为
http://host/ /api/list
如果移动应用程序像浏览器一样充当用户代理,它收集用户名/密码,登录并访问 FAB 的 RESTful API,然后权限,url 没什么大不了的,一切都可以遵循 B/S 编程。AKA,所有安全模型都基于 cookie 和会话。大多数请求信息都在 flask.g.user/flask.request.* 中。
如果 webapp 必须支持更多标准样式的 RESTful API,如 miguel 的烧瓶书中所述。外部 webapp 必须将 api key/secret 嵌入到指定的 url 以交换令牌,然后在 header 或 http 参数中使用令牌来访问资源以进行 CRUD 操作。
我已经成功地将它们合并到 FAB 的 views.py 中。
是的,我可以实现标准的 RESTful API,就像我在另一个烧瓶项目中使用 http 标头和使用 sqlalchemy 的自定义查询一样。但我不确定这是否是正确的方法。由于大部分数据都是直接从 sqlalchemy 原始查询请求的,因此它们是完全不同的编程体验。
在继续前进之前,欢迎提出任何建议。
python - 使用 Flask-Appbuilder 轮换 consumer_secret
有一个带有自定义的 Flask-Appbuilder 应用程序,SecurityManager
可以查找从浏览器获取的用户令牌。我们在应用程序启动时获取客户端凭据。直到凭证轮换为止,它都可以正常工作。
是否有一个扩展点,我可以在其中实现请求customer_id
和customer_secret
来自外部资源?
SecurityManager
执行:
config.py
: