问题标签 [flask-script]

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.

0 投票
1 回答
846 浏览

python - MySQL、SQLAlchemy、Flask 和 flask.ext.script 的问题——create_all() 不会创建表

在我的 virtualenv 中执行以下操作时,我无法创建表:

根本没有抛出错误消息。这是我的项目的结构:

如有必要,我可以包含更多代码,但我相信这些是需要考虑的重要文件:

1) checkup_web.py

2) 配置文件

3) 应用程序/__init__.py

4)app/models.py(不确定我是否在这里做错了什么——第一次使用 SQLAlchemy)

不幸的是,尽管没有抛出任何错误,但对 create_all() 的调用并未在我的 mysql 数据库中生成任何表:

我非常感谢任何想法/建议!

0 投票
1 回答
5489 浏览

flask - 使用带有烧瓶脚本和应用程序工厂的烧瓶迁移

我正在构建烧瓶应用程序并决定这次尝试应用程序工厂方法,但遇到烧瓶迁移问题并且无法找出简单的解决方案。

请注意,我想将配置位置作为选项传递给脚本

管理.py:

然后我需要创建迁移实例并向管理器添加命令:

但尚未创建应用实例,因此失败

我知道我可以在环境变量中传递配置并在创建管理器实例之前创建应用程序,但是如何使用管理器选项呢?

0 投票
1 回答
1700 浏览

flask - 将 flask-migrate 与 flask-script、flask-socketio 和应用程序工厂一起使用

我正在使用应用程序工厂方法创建一个烧瓶应用程序,但是在将 Flask-Migrate 与 socketio 和 flask-script 一起使用时遇到问题。

问题是我将我的create_app函数传递给了,Manager但我也需要传递app给我socketio.run()的。现在我似乎看不到解决方案。有什么办法可以将这两种解决方案结合起来吗?

管理.py:

当我使用带有 socketio 的旧方法,但没有烧瓶迁移时,一切正常。如果我使用新方法并删除 socketio 部分,则迁移工作。

注意:我希望能够使用以下两个命令调用我的应用程序。 python manage.py run python manage.py -t True db upgrade

编辑:

试图使用current_app我得到RuntimeError: working outside of application context

0 投票
2 回答
6492 浏览

python - 使用 uwsgi 和 flask-script Manager 部署烧瓶应用程序

传统上,我将 UWSGI 配置文件配置为调用如下应用程序:

,

,

但是现在,我正在关注 Miguel Grinberg 的 Flask 书,在这里他使用了如下所示的应用程序工厂

与“经理”(见烧瓶脚本经理

在这个配置中,我触发我的开发服务器$ python manage.py runserver

而在我触发它之前$ python run_web.py

现在,我正在为在 uwsgi 配置文件中添加什么内容以允许通过 UWSGI 部署此应用程序而苦苦挣扎。具体来说,appmodulecallable变量。

我在日志中遇到的错误是:

0 投票
0 回答
506 浏览

python - 如何将烧瓶脚本选项传递给孩子

我有以下三个模块(基于 Miguel Grinberg 的优秀书籍):

__init__.py

manage.py

import_file.py

我将要做很多文件操作,并且我希望能够从命令行进行一些测试/调试,因此会有许多 _CLI 模块用于不同的事情。我希望能够控制我得到的输出的详细程度,所以我定义了详细程度选项。我不知道如何将该选项实际传递给 Import_File_CLI 类。我知道我可以向 option_list 添加一个选项,但是当我真的希望它成为一个全局选项时,我最终不得不将它添加到我创建的每个 _CLI 类中。那么如何访问我在子类的主管理器中设置的选项?

文档中有一个这样的例子,但它在同一个模块中,而不是一个子类。我可以将选项传递给工厂函数,然后设置应用程序范围的默认值,但这似乎也不是最佳的,因为我大部分时间都不需要设置它。我是否需要创建一个 _CLI 子管理器,可能吗?

0 投票
1 回答
537 浏览

python - 使用 Flask-Script / Python 从标准输入中读取

现在我有flask-script命令,它将路径作为参数,然后从路径中读取:

我希望它也能够从标准中读取。(我经常需要在剪贴板上传递文本,每次都必须创建一个文件很烦人。)

我怎样才能做到这一点?

我试过使用fileinput.input(),通过这个https://stackoverflow.com/a/1454400/1164573,调用以下内容:

但是fileinput.input()是空的。这是因为烧瓶脚本正在包装我的函数而不是直接将标准暴露给它吗?我怎样才能解决这个问题?

0 投票
1 回答
3874 浏览

python - Flask-script 添加命令和选项

我想要一个布尔标志和一个为我的命令提供 n 个参数的选项。所需的示例用法:

我的函数现在看起来像这样(如果两者都提供,函数的主体也有抛出错误的逻辑):

这适用于 --ids 选项,但 --all 选项说:error: argument --all: expected one argument

TLDR:我怎样才能同时拥有选项和命令?

0 投票
1 回答
479 浏览

apache - 在 Apache 中使用 Flask-Script

我正在使用 Flask 脚本。在开发中,我通过调用来启动我的应用程序./manage.py runserver,这将使它在端口 5000 上运行。

我正在尝试使用 Apache 部署我的应用程序。我找不到将参数runserver提供给我的应用程序的指令。

0 投票
1 回答
194 浏览

flask - 创建应用程序后更改 Flask 配置

我正在使用 Livereload + Flask + Flask SOcketIO + Flask 脚本。问题是 SocketIO 需要一个 gevent-socketio 服务器。这不是所有的livereload。不要误会我的意思,我不想解决这个问题。我只运行 livereload 来做一些 css/sass/js 工作,所以没关系。

但是每次客户端尝试连接到socketIO服务器时抛出的异常让我很困扰。所以我想我可以禁用 javascript,但我的应用程序主要依赖 angular 来异步渲染指令,所以页面上没有标签让我能够切换样式。然后我意识到我可以编写一个配置属性,因此当我加载页面时 Jinja2 会将其作为 javascript 变量提供,并且我不会加载特定的 socket-io js 文件以防它被设置为 False。我已经尝试过了。

在 config.py 上设置:

我用 FLask-Script 运行 livereload 服务器

将配置属性传递给 javascript 端

但这不起作用( LIVERELOAD 始终显示 True )因为我在 Config 类已经插入到 Flask 应用程序对象之后设置属性。还有其他方法吗?

0 投票
0 回答
1361 浏览

flask - 如何集成烧瓶socketio和烧瓶脚本

我一直在关注 miguelgrinberg 的例子。运行时它工作正常。我提交给heroku并且工作正常。但是,当我尝试与 flask-script 集成时,出现此错误:

文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/flask_socketio/init .py ”,第27行,调用 raise RuntimeError('你需要使用gevent-socketio服务器.') RuntimeError:您需要使用 gevent-socketio 服务器。

我集成的方式是使用以下代码: