草庐IT

Flask-Migrate

全部标签

python - 带 Flask 的后台工作人员

我有一个基于python/Flask构建的web应用程序,它有一个相应的后台作业,该作业连续运行,定期轮询每个注册用户的数据。我希望这个后台作业在系统启动时启动并一直运行直到它关闭。我没有设置/etc/rc.d脚本,而是让flask应用程序在应用程序启动时产生一个新进程(使用多处理模块)。因此,使用此设置,我只需要部署Flask应用程序,后台工作程序也会运行。这样做有什么缺点?这是一个完整而彻底的hack,在某种程度上是脆弱的,还是设置具有相应后台任务的webapp的好方法? 最佳答案 您的方法的缺点是它可能会在很多方面失败,尤其是

python - 使用 Gunicorn + Nginx + Flask 有什么好处?

这个问题在这里已经有了答案:AreaWSGIserverandHTTPserverrequiredtoserveaFlaskapp?(3个回答)关闭3年前。我看到人们正在运行Nginx+Gunicorn+Flask之类的设置。有人能解释一下在Flask面前放Gunicorn有什么好处吗?为什么不单独运行Flask?运行Gunicorn+Flask不会消耗更多资源吗?Gunicorn是否能够在Flask实例无法响应时重新启动它?在gunicorn之上安装nginx的目的是什么?unicorn还不够吗?再次,花费更多的资源? 最佳答案

python - 使用 Gunicorn + Nginx + Flask 有什么好处?

这个问题在这里已经有了答案:AreaWSGIserverandHTTPserverrequiredtoserveaFlaskapp?(3个回答)关闭3年前。我看到人们正在运行Nginx+Gunicorn+Flask之类的设置。有人能解释一下在Flask面前放Gunicorn有什么好处吗?为什么不单独运行Flask?运行Gunicorn+Flask不会消耗更多资源吗?Gunicorn是否能够在Flask实例无法响应时重新启动它?在gunicorn之上安装nginx的目的是什么?unicorn还不够吗?再次,花费更多的资源? 最佳答案

python - 为什么 Flask 应用程序在 Gunicorn 托管时不创建任何日志?

我正在尝试将日志记录添加到使用Flask的Web应用程序中。当使用内置服务器(即python3server.py)托管时,日志记录有效。使用Gunicorn托管时,不会创建日志文件。重现问题的最简单代码是这个:#!/usr/bin/envpythonimportloggingfromflaskimportFlaskflaskApp=Flask(__name__)@flaskApp.route('/')defindex():flaskApp.logger.info('Logmessage')print('Directoutput')return'HelloWorld\n'if__name

python - 为什么 Flask 应用程序在 Gunicorn 托管时不创建任何日志?

我正在尝试将日志记录添加到使用Flask的Web应用程序中。当使用内置服务器(即python3server.py)托管时,日志记录有效。使用Gunicorn托管时,不会创建日志文件。重现问题的最简单代码是这个:#!/usr/bin/envpythonimportloggingfromflaskimportFlaskflaskApp=Flask(__name__)@flaskApp.route('/')defindex():flaskApp.logger.info('Logmessage')print('Directoutput')return'HelloWorld\n'if__name

python - 请求前 flask - 为特定路线添加异常(exception)

在before_request()函数(如下)中,如果用户尚未登录,我想将用户重定向到/login。是否有一个特殊变量会给我当前的URL,它可以像下面的例子那样工作吗?@app.before_requestdefbefore_request():#thevariablecurrent_urldoesnotexist#butiwantsomethingthatworkslikeitif(not'logged_in'insession)and(current_url!='/login'):returnredirect(url_for('login'))我需要检查当前URL是否为/login

python - 请求前 flask - 为特定路线添加异常(exception)

在before_request()函数(如下)中,如果用户尚未登录,我想将用户重定向到/login。是否有一个特殊变量会给我当前的URL,它可以像下面的例子那样工作吗?@app.before_requestdefbefore_request():#thevariablecurrent_urldoesnotexist#butiwantsomethingthatworkslikeitif(not'logged_in'insession)and(current_url!='/login'):returnredirect(url_for('login'))我需要检查当前URL是否为/login

python - 将 sass 与 Flask 和 jinja2 一起使用

我想在我的Flask应用程序中包含一个sass编译器。有没有普遍接受的方法? 最佳答案 Flask-Assets扩展名(使用webassets库)可用于此目的。以下是如何配置它以使用pyScssSCSS的编译器(用Python实现):fromflaskimportFlask,render_templatefromflask.ext.assetsimportEnvironment,Bundleapp=Flask(__name__)assets=Environment(app)assets.url=app.static_url_path

python - 将 sass 与 Flask 和 jinja2 一起使用

我想在我的Flask应用程序中包含一个sass编译器。有没有普遍接受的方法? 最佳答案 Flask-Assets扩展名(使用webassets库)可用于此目的。以下是如何配置它以使用pyScssSCSS的编译器(用Python实现):fromflaskimportFlask,render_templatefromflask.ext.assetsimportEnvironment,Bundleapp=Flask(__name__)assets=Environment(app)assets.url=app.static_url_path

python - Jinja/Flask中的字符串长度

很遗憾,Jinja不支持执行任意Python代码,例如{%iflen(some_var)>1%}...{%endif%}我目前的解决方法是使用已弃用、丑陋的双下划线方法:{%ifsome_var.__len__()>1%}...{%endif%}虽然这可行,但我担心将来的某些字符串实现可能会破坏此代码。有没有更好的方法来做到这一点? 最佳答案 您可以使用lengthfilter:{%ifsome_var|length>1%} 关于python-Jinja/Flask中的字符串长度,我们在