问题标签 [marshmallow-sqlalchemy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 分页前 SQLAlchemy 查询速度慢
我正在使用 Flask 和 SQLAlchemy 创建 API。在我进行分页查询时的 get 端点中,即使两个查询都带来相同的数据,它也比不分页时更快(比如快两倍)。
字符串查询是这样的:
但是,当我对查询应用分页(即 query.limit(20).offset(0))时,查询更改为:
即使我应用无和 0 的分页(即 query.limit(None).offset(0))也是如此。
有谁知道为什么会这样?
python - 从数据库会话中取消绑定 Marshmallow 瞬态对象
我正在使用 marshmallow_sqlalchemy 库从模式中的对象构建对象,然后添加数据库。我的 Marshmallow 和 Sqlalchemy 类定义如下:
我有两个会话;db.session
和session_2
。默认情况下,通过创建的对象PersonSchema
附加到db.session
。但我需要使用session_2
将这些对象添加到数据库中:
如果我使用db.session
将此对象添加到 db 它将正常工作:
但是,当我想这样使用时session_2
:
我收到一个错误:
这是预期的,因为默认情况下应该附加sqlalchemy.exc.InvalidRequestError: Object '<Person at 0x7ff9193e27d0>' is already attached to session '2' (this is '4')
构建的对象。PersonSchema
db.session
我的问题是:有没有办法在不改变定义的情况下person
解除绑定db.session
以便能够使用它?或者也许在调用时如何覆盖默认会话(我试过但没有用)?避免/解决这种情况的最佳方法是什么?session_2
PersonSchema
.load
.load(person_data, session=session_2)
python - 架构加载问题
我正在尝试使用带有烧瓶的 sqlalchemy 在 python 上编写一个项目。所以我有部门。
和员工阶层
所以我不仅要创建一个空部门,然后在那里输入员工,还要创建已经有员工的部门。我正在使用 post 方法。
问题是,当我测试创建空部门时,一切都很好,但是当我与员工一起创建部门时,我得到
这是我的部门课程架构
问题是,我猜,架构不期望 Department 有 2 个参数(“title”和“employees”),但是当只加载“title”时没有任何不好的事情发生。有人知道如何解决吗?我真的很感激。我还将在 GitHub https://github.com/selezenart/department_api上的项目上应用链接
python - 有没有办法使用棉花糖 sqlAlchemy 对多个对象进行建模?
我有以下 SqlAlchemy 配置(为简洁起见,伪代码):
我有一个 Marshmallow SqlAlchemy 模式,如下所示:
我正在使用的查询如下所示:
我怎样才能C.id
在我的ASchema
课程中加入,以便我以后可以访问它?