草庐IT

Flask-Migrate

全部标签

python - Flask 数据库问题

我使用本教程作为指南。http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iv-database我想要可以包含多个产品的类别。类似于他如何拥有一个拥有多个帖子的用户。当我打开python解释器并尝试创建一个类别时>>>fromappimportdb,models>>>u=models.Category(name="Test")我收到这个错误/sqlalchemy/orm/properties.py",line1387,in_generate_backrefself,mapper))sqlalchemy.exc

python - 允许 flask route 的所有方法类型

如何允许路由接受所有类型的方法?我不只是想路由标准方法,如HEAD、GET、POST、OPTIONS,DELETE&PUT.我希望它也接受以下方法:FOOBAR、WHYISTHISMETHODNAMESOLONG和所有其他可能的方法名称。 最佳答案 您可以为此直接更改url_map,通过添加Rule没有方法:fromflaskimportFlask,requestimportunittestfromwerkzeug.routingimportRuleapp=Flask(__name__)app.url_map.add(Rule('/

python - Flask 中间件中如何访问请求

我想在中间件中访问request.url。flask应用程序-test.pyfromflaskimportFlaskfrommiddlewareimportTestMiddlewareapp=Flask(__name__)app.wsgi_app=TestMiddleware(app.wsgi_app)@app.route('/')defhello_world():return'HelloWorld!'if__name__=='__main__':app.run()中间件.py:fromflaskimportrequestclassTestMiddleware(object):def_

python - 使用 SERVER_NAME 时 Flask 404

在我的Flask配置中,我将SERVER_NAME设置为像“app.example.com”这样的域。我这样做是因为我需要将url_for与_externalURL一起使用。如果未设置SERVER_NAME,Flask认为服务器是127.0.0.1:5000(它实际上在反向代理后面运行),并返回一个外部URL,如http://127.0.0.1:5000/location.到目前为止一切顺利。但这是我的问题:设置SERVER_NAME后,每个URL都返回404。我看到每个请求都到达服务器,指向正确的URL,但Flask以404响应。如果我禁用SERVER_NAME,则会返回正确的页面。

python - 如何在 flask-sqlalchemy 中建立三向多对多关系

在flask-sqlalchemy中设计三向多对多的正确方法是什么?假设我有用户、团队和角色。用户被分配到团队。当分配给一个团队时,用户也会在该团队中分配一个角色。frommyappimportdbclassUser(db.Model):id=db.Column(db.Integer,primary_key=True)name=db.Column(db.String(128),unique=True)def__init__(self,name):self.name=namedef__repr__(self):return""%self.nameclassTeam(db.Model):i

python - Flask-Sqlalchemy + Sqlalchemy-searchable 返回空列表

第一次访问该网站,大家好,在此先感谢。长期潜伏者和新手。我正在使用Flask-SqlAlchemy和SqlAlchemy-Searchable(文档->https://sqlalchemy-searchable.readthedocs.org/en/latest/index.html)在Flask中开发网络应用程序。出于我无法弄清楚的原因,当我尝试与文档页面上显示的代码类似示例时:fromflaskimportFlaskfromflask.ext.sqlalchemyimportSQLAlchemy,BaseQueryfromsqlalchemy_searchableimportSea

python - flask-migrate 不检测模型

我正在阅读(和观看)有关Flask-Migrate的信息:https://realpython.com/blog/python/flask-by-example-part-2-postgres-sqlalchemy-and-alembic/在这里https://www.youtube.com/watch?v=YJibNSI-iaE#t=21并完成本教程中的所有操作:我启动了一个本地postgres服务器(使用Postgres.App,它在postgresql://localhost:5432启动了服务器)根据所述教程更新配置更新了app.py,创建了models.py等。安装Flask

python - Flask View 中装饰器的顺序是否重要?

我正在使用login_required装饰器和另一个对输出数据进行分页的装饰器。谁先来重要吗? 最佳答案 虽然在这种情况下可能不会有任何问题,无论顺序如何,您可能希望login_required首先执行,这样您就不会进行查询和分页结果扔掉了。装饰器将原始函数从下到上包装起来,因此当函数被调用时,每个装饰器添加的包装器从上到下执行。@login_required应该在假设用户已登录的任何其他装饰器下方,以便在其他装饰器之前评估其条件。@app.route()必须始终是顶部、最外层的装饰器。否则路由将被注册为一个不代表所有装饰器的函数。

python - 获取 Flask 请求的引用 URL

当用户访问我们的网站并注册时,我如何捕获他们来自哪个网站?无论是搜索、公关网站等。我不关心他们访问了我们网站的哪个页面,我只想知道哪些营销事件为我们带来了最多的注册。我知道GoogleAnalytics可能可以做到这一点,但我也希望有一些内部引用。 最佳答案 request.referrer包含请求来自的URL,尽管由于各种原因客户端可能不会发送它。该属性从Referer(不是拼写错误!)header中获取其值:referrer=request.headers.get("Referer")或者,使用Flask快捷方式:referre

python - 如何使用 Factory Boy 和 Flask-SQLAlchemy 设置依赖工厂?

在Flask-SQLAlchemy和外键约束下使用factoryboy的正确方法是什么?考虑以下FlaskSQLAlchemy模型设置:#coding=utf-8fromflaskimportFlaskfromflask.ext.sqlalchemyimportSQLAlchemyapp=Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI']='sqlite:///test.db'db=SQLAlchemy(app)#------------------------------#SQLAlchemyTableModels#-------