问题标签 [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.
python - 没有参数的鼻子 main() 会产生奇怪的行为
我有一个 Flask 应用程序,我正在使用 Flask-Script 和 Flask-Testing。基本上我有一个manage.py
看起来像这样的文件:
我的应用树看起来像:
__init__.py
只包含一些使 Flask-SQLAlchemy 的东西在测试中工作的东西,并且test_one.py
只包含一个空的测试函数。
奇怪的是:当我运行时python manage.py test
,它开始执行一些奇怪的测试(我相信来自 Python 本身的测试)。如果我更改nose.main()
为nose.main(argv=[''])
,我的测试将被正确发现并且一切顺利。
使用 plain 有什么问题nose.main()
?
flask - 在 Flask-Script 中与 Flask 的应用程序交互
我有一个烧瓶应用程序正在运行,我想要一些可以与之交互的东西。让我用下一个例子来解释它:
烧瓶应用程序:
烧瓶脚本(manager.py):
从应用程序内部reload_mytext()
调用函数。text_reload()
我应该在烧瓶脚本中添加什么魔法来完成这些事情?这样的事情甚至可能吗?
flask - 带有参数和 cron 作业的烧瓶脚本
我有一个使用烧瓶脚本扩展运行的烧瓶应用程序。一个函数(带有 3 个参数)被放置在我的 cron 中,并以以下方式结束:
就像在烧瓶脚本文档中提到的那样 -链接
当我直接在控制台中调用它时,这个函数可以正常工作(就像在烧瓶脚本文档中提到的那样)
但不在我的 cron 中(添加了必要的注释“# arg2 注释”)。
当我在树莓派上运行这个脚本时,cron 或 python 都没有错误。有什么线索吗?
python - Flask-Script add_option 方法不起作用
使用烧瓶脚本的add_option
方法,我正在尝试将配置文件的名称传递给我create_app()
,以便我可以配置from_pyfile()
——Flask Instance Folders
我用这个要点让我开始。
manage.py
app.py
这只是我的create_app
功能的一个片段,但我正在像这样启动应用程序:
如您所见,
我认为这是由于from flask 脚本而不是打印config/heroku.cfg
它,但我不知道为什么会发生这种情况。None
UserWarning
python - Flask-Script 如何访问当前应用程序?
我正在尝试从 Flask-Script manager.command 访问当前的应用程序实例。
这会出错(url_map 是 flask.app 的属性)
这行得通,但我不喜欢在应用程序旁边添加括号。
调试器显示 app 是可调用的。这与我创建应用程序实例的方式有关。我正在遵循这种模式:
来自烧瓶脚本的文档说关于应用程序参数Manager(app)
:
app – Flask 实例,或可调用的返回 Flask 实例。
我很乐意在其中放置一个可调用对象,因为文档说没关系。:-) 另外,我见过其他人这样做。
但是现在我有这个我想添加的外围命令,它迫使我使用带有括号的应用程序,这闻起来很不对劲。我究竟做错了什么?
编辑:我做了一些实验。这绝对是错误的。通过添加括号,应用程序实例将第二次重新创建。
flask - 蓝图初始化,我可以在第一次请求蓝图之前运行一个函数吗
是否可以在对特定的第一个请求之前运行一个函数blueprint
?
目前这将产生以下错误:
python - 烧瓶应用程序启动后运行代码
我的目标是在我的 Flask 应用程序启动后让任意代码运行。这是我所拥有的:
理想情况下,我将能够做到这一点:
但是代码不会继续过去app.run()
,所以 some_code() 永远不会运行。
我目前正在研究的解决方案是在 app.run() 的单独线程中运行 some_code(),创建一个before first request函数来设置它:
然后让 some_code() 向应用程序发出基本请求,以便“在第一次请求之前”代码运行。这是相当复杂的,并且很难记录。我宁愿使用 Flask 中已经提供的 app.is_running 参数,或者使用@app.after_server_start
装饰器,但据我所知,这些都不存在。
帮我把这段代码做得更好?
死后:每次想到这个问题,我都希望有一个@app.after_server_start
装饰器存在。
flask - 使用应用工厂和 Flask 脚本时导入 Flask 应用
这是 Flask 应用程序上下文
应用程序上下文的大多数用例涉及在同一脚本上初始化“应用程序”或从基础导入应用程序。
我的申请结构如下:
这可能真的是微不足道的问题,但是如果我的应用程序的结构是这样的,我应该如何调用'with app.app_context()'?
python - flask manage.py runserver 无法传递参数
用户 manager.py runserver 我的烧瓶网络框架可以在http://127.0.0.1:5000上启动,但它不能在网络中的其他计算机上访问。所以我需要在网络中使用开放 IP。虽然我使用波纹管命令:
它无法运行并给出错误信息:
不知道有什么问题??
python - 如何在烧瓶脚本的@manager.options 中设置默认值
我已经使用flask-script 包构建了一个命令行python 脚本来访问一个常规APIRest 服务通过flask 管理的sql 数据库。我在为我的脚本命令设置参数时遇到问题。尤其是:
a) 如何在 @manager.options 行中设置默认值
b) 如何设置标志
我尝试过类似以下的方法:
我设法通过将它添加到函数变量来“破解”默认值,但是我不知道@manager.option 中的“默认”参数是什么?另外,useCredit 总是问我一个值,我怎样才能让它成为一个标志?
更新
感谢@carlos的回答,我意识到我一定是测试错了,因为它确实可以在 manager.option 命令中设置默认参数。似乎我在函数定义中放置的任何值 (def newClient(credit=100, useCredit=False) 都被忽略了。我本以为系统会发出一些警告或错误...