草庐IT

和Flask

全部标签

python - Flask、蓝图、current_app

我正在尝试从蓝图(我将在模板中使用的函数)在Jinja环境中添加一个函数。主.pyapp=Flask(__name__)app.register_blueprint(heysyni)MyBluePrint.pyheysyni=Blueprint('heysyni',__name__)@heysyni.route('/heysyni'):returnrender_template('heysyni.html',heysini=res_heysini)现在在MyBluePrint.py中,我想添加如下内容:defrole_function():return'admin'app.jinja_

python - 如何在 Flask 中为每个请求创建 pymongo 连接

在我的Flask应用中,我希望直接使用pymongo。但我不确定为每个请求创建pymongo连接的最佳方式是什么以及如何回收连接资源。我知道pymongo中的Connection是线程安全的并且具有内置池。我想我需要创建一个全局Connection实例,并使用before_request将其放入flaskg中。在app.py中:frompymongoimportConnectionfromadmin.viewsimportadminconnection=Connection()db=connection['test']@app.before_requestdefbefore_reque

python - 用 flask 记录错误

我正在尝试使用app.logger.error('')在装饰器函数中记录错误,但它不起作用。另外我不能很好地调试它,我只能看到来自http客户端的响应:(我用的是nginx+uwsgi+flask)HTTP/1.1502BadGatewayServer:nginxDate:Sun,12Aug201215:45:09GMTContent-Type:text/htmlContent-Length:14Connection:keep-alive一切都很好,没有一行:app.logger.error('panic!!!')defmydecorator():defdecorator(f):def

python - 使用 mod_wsgi 记录 flask 错误

很长一段时间以来,我一直在努力使它正常工作,但我现在真的束手无策。我已尝试完成我在SO和Flask文档中可以找到的所有内容,但我仍然无法使用简单的错误日志来调试我的应用程序。下面是粘贴的代码-#main.pyfromflaskimportFlaskimportloggingapp=Flask(__name__)file_handler=logging.FileHandler(filename='/tmp/election_error.log')file_handler.setLevel(logging.WARNING)app.logger.addHandler(file_handler

python - 如何在 Python Flask 应用程序中存储环境变量?

我有一个访问GithubAPI的PythonFlask应用程序。为此,我需要存储一个访问token。存储这些数据的常见做法是什么?我如何在我的应用程序中访问这些数据?fromflaskimportFlask,requestapp=Flask(__name__)app.config['DEBUG']=True@app.route('/',methods=['POST'])deffoo():... 最佳答案 Flask有一个自定义上下文来存储应用程序变量:http://flask.pocoo.org/docs/1.0/appcontex

python - 使用 Apache 运行 Flask 时打印件去了哪里?

我刚刚将我使用Flask构建的第一个网站部署到了生产服务器上。我使用logging.handlers.RotatingFileHandler启用日志记录到/log/myapp.log,我可以使用它记录消息,例如:current_app.logger.error('thisisamassiveerror')这很好用。不过,这让我对一些代码感到疑惑,其中包含例如我在调试时使用的print'someinfohere'。这些打印输出到哪里去了?进入void/dev/null或其他地方?有没有可能以某种方式捕获他们?欢迎所有提示! 最佳答案

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。要解决这个问题,您需要使用支持原