草庐IT

Flask-Migrate

全部标签

python - 从 Flask 应用访问 Spark

我编写了一个简单的Flask应用程序来将一些数据传递给Spark。该脚本在IPythonNotebook中有效,但当我尝试在它自己的服务器中运行它时却无效。我不认为Spark上下文在脚本中运行。如何让Spark在以下示例中工作?fromflaskimportFlask,requestfrompysparkimportSparkConf,SparkContextapp=Flask(__name__)conf=SparkConf()conf.setMaster("local")conf.setAppName("SparkContext1")conf.set("spark.executor.

python - 将 Flask 的 Click CLI 与应用工厂模式结合使用

我使用应用工厂模式定义我的Flask应用程序。使用Flask-Script时,我可以将工厂函数传递给Manager。我想改用Flask的内置ClickCLI。如何将工厂与Click一起使用?我当前的代码使用Flask-Script。如何使用Click执行此操作?fromflaskimportFlaskfromflask_scriptimportManager,Shelldefcreate_app():app=Flask(__name__)...returnappmanager=Manager(create_app)defmake_shell_context():returndict(a

python - 可以使用 AngularJS+Flask 堆栈来完成推送通知吗?

我的网站有一个Python/Flask后端和一个Angular前端。在后端有一个进程偶尔会检查SQS的消息,我希望它向客户端推送通知,然后客户端可以依次更新AngularController。我现有技术的最佳方法是什么? 最佳答案 为了能够推送到客户端,您必须以某种方式实现网络套接字支持。如果你想把它保存在python/flask中,这里有关于如何使用gevent做到这一点的教程:http://www.socketubs.org/2012/10/28/Websocket_with_flask_and_gevent.html在那篇文章

python - 每次访问 Flask View 的增量计数器

我想在用户访问我的Flask应用程序中的页面时增加一个计数器。如果两个用户访问该页面,则计数应增加2。我尝试了以下操作,但计数始终为1。如何为每次访问增加值?@app.route('/count')defmake_count():count=0value=count+1returnjsonify(count=value) 最佳答案 并发计数很难。假设计数为0。如果两个用户都以足够近的时间间隔访问端点,他们每个人都可能获得值0,将其递增到1,然后放回原来的值。两个用户到达终点,但结果计数是1,而不是2。要解决这个问题,您需要使用支持原

python - Flask 模板 - For 循环迭代键 :value

我有一个HTML模板,里面有一个FlaskJinjafor循环,它生成一个表,看起来像:{%forsegmentinsegment_details%}{{segment}}{{segment_details['{{segment}}']}}{%endfor%}我正在尝试遍历不同长度/键的文档,并将表中的每一行显示为键和值。在我的Python代码中,我得到了在shell中具有所需响应的代码:foriteminsegment_details:print(item,segment_details[item])但在Flask中,我得到的项目正确列出了除之外的所有行{{segment_detai

Python - 如何从同一台客户端机器运行多个 flask 应用程序

我有一个flask应用程序脚本,如下所示:fromflaskimportFlaskapp=Flask(__name__)@app.route("/")defmain(job_id):return"Welcome!.ThisisFlaskTestPart1"if__name__=="__main__":job_id=1234app.run(host='0.0.0.0')我有另一个flask应用程序脚本如下:fromflaskimportFlaskapp=Flask(__name__)@app.route("/")defmain(ID):return"Welcome!.ThisisFlas

python - 如何使用 flask 套接字?获取 KeyError : 'wsgi.websocket'

我正在尝试使用Flask-Sockets使用示例代码:sockets=Sockets(app)@sockets.route('/echo')defecho_socket(ws):whileTrue:message=ws.receive()ws.send(message)不幸的是,当使用我的浏览器简单地访问url/echo时,它给我一个错误提示:File"/Library/Python/2.7/site-packages/Flask-0.10-py2.7.egg/flask/app.py",line1836,in__call__returnself.wsgi_app(environ,st

python - Flask url_for 忽略端口

我有一个Flask应用程序在端口5000上运行。我的服务器管理员已将nginx配置为将其转发到端口5001(抱歉,如果我用错了术语:Flask应用程序在端口5000上运行,但该应用程序可在以下位置公开访问http://the_url:5001).在浏览器中直接访问的所有路由都有效,但任何使用url_for()的重定向似乎都会导致URL中缺少端口—即redirect(url_for('index'))重定向到http://the_url/而不是http://the_url:5001/(其中@app.route("/")触发函数index())。如何确保Flask在重定向时添加正确的端口?

python - 在 Flask 模板中编码 JSON

我想在我的应用程序中使用json.dumps()来pretty-printJSON。目前,我的模板设置如下:{%fortestinlist_of_decoded_json%}{{test|safe}}{%endfor%}其中test是解码后的JSON字符串。但是,此实现仅在一行中打印JSON字符串。知道jinja2不支持模板中的json.dumps()函数,我怎样才能得到我想要的pretty-print布局? 最佳答案 您可以创建自己的to_pretty_json过滤器。首先,您必须将json.dumps()包装到一个新函数中,然后

python - 具有空选项的 Flask-wtf 动态选择字段

我想填充基于查询搜索的选择字段。但我还想要一个空选项。这是我当前的代码form.state.choices=[(s.id,s.name)forsinState.query.all()]结果是CaliforniaFlorida想要的结果是CaliforniaFlorida如果select选项为空也无效,那就太酷了。 最佳答案 您可能想像这样添加空值:choices=[("","---")]form.state.choices=[choices.append((s.id,s.name))forsinState.query.all()]然