草庐IT

Flask-Migrate

全部标签

python - Flask-WTF FileField 没有将数据属性设置为 Werkzeug FileStorage 的实例

Flask-WTF的documentation指出:Flask-WTFprovidesyouaFileFieldtohandlefileuploading,itwillautomaticallydrawdatafromflask.request.filesiftheformisposted.ThedataattributeofFileFieldwillbeaninstanceofWerkzeugFileStorage.但是,当我使用FileField时,发布后的data属性不是FileStorage对象。相反,它要么是None(如果我按照文档中的建议使用enctype="multipa

python - 使用(仅)SQLAlchemy Core 的 Flask 应用程序模式

我有一个Flask应用程序,我想使用SQLAlchemyCore(即我明确不想使用ORM),类似于Flask文档中描述的“第四种方式”:http://flask.pocoo.org/docs/patterns/sqlalchemy/#sql-abstraction-layer我想知道在以下方面推荐的模式是什么:如何连接到我的数据库(我可以简单地将connection实例存储在g.db变量中,在before_request中?)如何执行反射以检索现有数据库的结构(如果可能,我想避免必须显式创建任何“模型/表类”) 最佳答案 正确:您将

python - 如何从 Flask python 中的 URL 中删除参数

在我的网站中,我的url将具有如下尾随参数:example.com/magicpage/?p=10&d=somestuff有没有办法在处理请求后删除这些参数?所以当用户点击一个链接时,参数被传递,但是可见的URL很简单:example.com/magicpage我的代码:@app.route("/magicpage")defmagicPage():#parseparametersanddothings#finishup#removethetrailingparametersintheurl#returntherenderedpage 最佳答案

python - 使用 Flask 在 Python 中实现面包屑?

我需要面包屑来导航我的Flask应用程序。一种选择是使用通用的Python模块,如bread.py:Thebreadobjectacceptsaurlstringandgrantsaccesstotheurlcrumbs(parts)orurllinks(listofhrefstoeachcrumb).bread.py从url路径生成面包屑,但我希望面包屑的元素是以前访问过的页面的标题和链接。在Flask中,也许这可以使用装饰器或扩展@route装饰器来完成。有没有办法让每次调用route()添加页面的标题和链接(在用@route修饰的函数/类中定义)到面包屑?还有其他方法吗?有没有为

python - 在 Flask 中使用具有不同绑定(bind)的相同名称的表

我有两个共享相同名称但位于不同数据库中的表:classLcn(db.Model):__tablename__='lcn'classLcnRemote(db.Model):__bind_key__='remote'__tablename__='lcn'SQLAlchemy似乎不喜欢那样。它说:sqlalchemy.exc.InvalidRequestError:Table'lcn'isalreadydefinedforthisMetaDatainstance.Specify'extend_existing=True'toredefineoptionsandcolumnsonanexist

python - 动态添加 URL 规则到 Flask 应用

我正在编写一个应用程序,用户可以在其中存储他们可以为其指定REST接口(interface)的信息。IE,将产品列表存储在//rest/products.由于URL显然是事先不知道的,所以我试图想出在Flask中实现动态URL创建的最佳方法。我想到的第一种方法是编写一个包罗万象的规则,然后从那里路由URL。但是当Flask已经内置了它们时,我基本上是在复制URL路由功能。所以,我想知道使用.add_url_rule()是否是个坏主意(docshere,向下滚动一点)将它们直接附加到应用程序。是否有不应该这样做的特定原因? 最佳答案

python - 将另一个对象传递给主 flask 应用程序

我对如何以正确的方式将对象传递给Flask应用程序有疑问。这个想法很简单。我想为我的应用程序创建一个API,这意味着我的Flask应用程序处理的http请求将触发我的主应用程序中的方法。为此,我需要flask以某种方式了解我的其他进程。目前,我有类似的东西:if__name__=='__main__':Logger=MyProcess()app.run()我需要能够做这样的事情:@app.route('/nb_trendy')defnb_trendy():res=Logger.get_trendy()returnjsonify(res)这意味着我要么需要将Logger的句柄提供给应用程

python - 使用 Flask-SQLAlchemy 连接到 MSSQL 数据库

我正在尝试通过Flask-SQLAlchemy连接到本地MSSQL数据库。这是我的__init__.py文件的代码摘录:fromflaskimportFlaskfromflask_sqlalchemyimportSQLAlchemyapp=Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI']='mssql+pyodbc://HARRISONS-THINK/LendApp'db=SQLAlchemy(app)SQLALCHEMY_TRACK_MODIFICATIONS=False如您在SQLServerManagementStudio中

python - 在 Flask 中使用 url_for 发出 POST 请求

我正在尝试在Jinja中发出POST请求Flask中的模板.但是,默认情况下参数是通过GET传递的,并且这种特定方法只接受POST请求。我尝试指定_method,如下所示,但它仍然使用GET而不是POST传递参数。{{s.title}}-{{song.owner}}(无论我是否指定_method,错误信息都是一样的)。 最佳答案 所有链接都是GET请求。您不能强制执行POST。另一种方法是这样的:@app.route('/save_info/',methods=['GET','POST'])defsave_info(filepath

python - 在 flask 中禁用自动转义

我想向用户显示一些文本。我发送的字符串变量有多个换行符,我不想\n被显示。所以我做了:footext="""foo"""#footext=="f\no\no"@app.route("/someurl")deffoo():returnrender_template("bar.html",text=footext.replace("\n",""))bar.html:{{text}}但是启用了自动转义,我看到的是foo.我的方法也不安全,我想要除之外的每个标签从文本中转义。我看了一下flask.Markup模块,但是它们也没有真正起作用。执行此操作的正确方法是什么?