草庐IT

Flask-MongoAlchemy

全部标签

python - flask - ImportError : No module named app

首先我创建了__init__.pyfromflaskimportFlaskapp=Flask(__name__)然后在一个单独的文件中,在同一目录下,run.pyfromappimportappapp.run(debug=True)当我尝试运行run.py时,出现错误Traceback(mostrecentcalllast):File"run.py",line1,infromappimportappImportError:Nomodulenamedapp 最佳答案 __init__.py是使用目录导入的。如果你想将它作为app导入,

python - Flask 和 React 路由

我正在使用React构建Flask应用程序,但最终遇到了路由问题。后端负责成为一个API,因此一些路由看起来像:@app.route('/api/v1/do-something/',methods=["GET"])defdo_something():returnsomething()以及通往React的主要路线:@app.route('/')defindex():returnrender_template('index.html')我正在使用react-router在React应用程序中,一切正常,react-router将我带到/something并获得渲染View,但是当我在/so

python - Flask-WTF - validate_on_submit() 永远不会执行

我正在使用Flask-WTF:这是我的表格:fromflask.ext.wtfimportForm,TextFieldclassBookNewForm(Form):name=TextField('Name')这里是Controller:@book.route('/book/new',methods=['GET','POST'])defcustomers_new():form=BookNewForm()ifform.is_submitted():print"submitted"ifform.validate():print"valid"ifform.validate_on_submit(

python - 使用 Flask,如何修改所有输出的 Cache-Control header ?

我试过用这个@app.after_requestdefadd_header(response):response.headers['Cache-Control']='max-age=300'returnresponse但这会导致出现重复的Cache-Controlheader。我只想要max-age=300,而不是max-age=1209600行!$curl-Ihttp://my.url.here/HTTP/1.1200OKDate:Wed,16Apr201414:24:22GMTServer:ApacheCache-Control:max-age=300Content-Length:

python - 为什么不每次 Flask 启动时生成 key ?

使用session时,Flask需要key。在我见过的每个示例中,key都是以某种方式生成的,然后存储在源代码或配置文件中。永久存储它的原因是什么?为什么不简单地在应用程序启动时生成它?app.secret_key=os.urandom(50) 最佳答案 key用于签署sessioncookie。如果您必须重新启动应用程序并重新生成key,则所有现有session都将失效。这可能不是您想要的(或者至少,不是使session无效的正确方法)。对于依赖key的其他任何东西都可以采用类似的情况,例如由itsdangerous生成的toke

python - Flask-RESTful API : multiple and complex endpoints

在我的Flask-RESTfulAPI中,假设我有两个对象,用户和城市。这是一对多的关系。现在,当我创建我的API并向其添加资源时,我所能做的似乎就是将非常简单和通用的URL映射到它们。这是代码(不包括无用的东西):classUserAPI(Resource):#TheAPIclassthathandlesasingleuserdef__init__(self):#Initializedefget(self,id):#GETrequestsdefput(self,id):#PUTrequestsdefdelete(self,id):#DELETErequestsclassUserLis

python - flask URL 路由 : Route Several URLs to the same function

我正在使用Flask0.9。现在我想将三个url路由到同一个函数:/item//item///item//部分永远不会在函数中使用。为了达到这个目的,我必须复制同一个函数两次:@app.route('/item//')defshow_item(appitemid):@app.route('/item//')defshow_item(appitemid,anythingcanbehere):会有更好的解决方案吗? 最佳答案 为什么不直接使用可能为空的参数,默认值为None?@app.route('/item//')@app.route

python - flask 与应用程序混淆

我正在启动一个flask项目,并且在我的代码中fromflaskimportFlask,render_template,abortapp=Flask(__name__)现在app到底是什么?我关注thisguide而且我对结构特别困惑,因为他选择了名为app/的目录,并且是他的app/__init__.py他有fromflaskimportFlaskapp=Flask(__name__)fromappimportviews在他的app/views.py中有fromappimportapp所有这些app到底是什么鬼?! 最佳答案 我认

python - 使用 Flask session 时出现内部服务器错误

我想在请求之间保存一个ID,使用Flasksessioncookie,但是当我执行一个请求时,我得到一个InternalServerError作为结果。我制作了一个简单的Flask应用程序原型(prototype)来演示我的问题:#!/usr/bin/envpythonfromflaskimportFlask,sessionapp=Flask(__name__)@app.route('/')defrun():session['tmp']=43return'43'if__name__=='__main__':app.run()为什么我在执行请求时无法存储具有以下值的sessioncook

python - 运行 flask 应用程序后调用函数的正确方法是什么?

我对如何做一些我认为很简单的事情有点困惑。我有一个使用Flask编写的简单应用程序。它看起来像这样:fromflaskimportFlaskapp=Flask(__name__)def_run_on_start(a_string):print"doingsomethingimportantwith%s"%a_string@app.route('/')defroot():return'helloworld'if__name__=="__main__":iflen(sys.argv)我发现我的终端正在输出_run_on_start中的打印语句,但不是其他常用的Flask应用程序调试代码。如