问题标签 [sqlmodel]

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.

0 投票
0 回答
48 浏览

python - 公共领域的预定义 pydantic 模型

我通过sqlmodel 使用pydantic来定义应用程序的持久数据模型。

想知道我是否必须从头开始编写一些非常常见的业务数据类型和验证器,其中

  • 银行账户信息
  • 邮寄地址

...或者如果我可以从图书馆得到这些。我的网络搜索并不是很有成效。我将不胜感激一些指示和建议。

0 投票
1 回答
355 浏览

python - 使用 fastapi/SQLModel,如何指定列/字段在表/响应对象中的显示顺序?

我有以下模型/模式:

在我的 postgres 客户端中,该表按字段在模型/模式中列出的顺序显示列:

postgres 客户端

此外,openapi 文档按照它们在模型中指定的顺序列出了响应对象字段User(请注意图像底部的响应对象):

开放API文档

我希望id成为表/响应对象中显示的第一列/字段。一般来说,如何强制执行列/字段的特定顺序?

0 投票
0 回答
193 浏览

python - 快速 api 依赖于 SQL 连接

我是快速 api 的新手。我正在尝试从我的表中获取用户但收到此错误:

user = await db.query(User).filter(User.login == data['login']).first()

AttributeError:“依赖”对象没有属性“查询”

这是我的服务器/database.py

这是服务器/web_server.py

我正在为我的应用程序使用 socketio,socketio.on('authorize')消息包含data = {'login' : '...', 'password' : '...'}我想用它来查找我的postgresql表中的用户检查密码并授权它。因此,“get_session”出现问题,查询、执行和提交无法使用它,得到相同的错误AttributeError: 'Depends' object has no attribute ..

0 投票
1 回答
223 浏览

python - 将 SQLAlchemy 声明式基础与 SQL 模型一起使用

在我们的一个项目中,我们多年来对所有模型都使用了 SQL Alchemy 声明性基础(而且有很多)。我们想为我们最新的模型声明尝试新的SQLModel 库。

为此,我们尝试将它与 Base 对象分开声明,并create_all为两者调用方法。

即: Base.metadata.create_all()SQLModel.metadata.create_all()

但是用 SQLModel 声明的模型不能识别用 Base 声明的表。

而此时,我们无法将之前的所有模型声明从 Base 更改为 SQLModel。

这是一个可重现的代码:

这是回溯:

我错过了什么?甚至有可能(有什么解决方法吗?)

0 投票
0 回答
21 浏览

python - 如何在 SQLModel 中使用 tablesample 方法

我正在尝试使用tablesampleSQLModel 中的方法(我相信它是直接从 SQLAlchemy 导入的),但我还没有看到任何关于如何使用它的文档(即使它可以在 MySQL 数据库上使用)

0 投票
1 回答
560 浏览

python - 如何使用 FastAPI、SQLalchemy 和 SQLModel 生成 UUID 字段

在我的 FastAPI 应用程序中创建模型时,我正在努力获取创建 UUID 字段的语法。我正在使用SQLModel

所以基本上,我的 models.py 文件如下所示:

以上错误与

我也试过

你明白了。这些错误对我没有帮助,我只需要正确的语法。

在这种情况下,我实际上并不想使用 UUID 作为主键。从导入中可以看出,我使用的是 postgreSQL。该数据库基于 postgres:12 docker 映像。

0 投票
0 回答
75 浏览

postgresql - 如何使用 SQLModel for FastAPI 创建 PostgreSQL“文本”列

我将 SQLModel 用于 FastAPI。但我不知道如何使用它创建“文本”列类型。

如何创建“文本”列?感谢您阅读。


这是我的解决方案!

0 投票
2 回答
323 浏览

python - FastAPI - 格式错误的十六进制 UUID 字符串

我正在使用 FastAPI 和 SQLModel 将数据插入 SQLite 数据库(我发布了一些字段,然后 SQLModel 添加了 UUID 和 datetime 字段并插入到数据库中)。

在将数据发布到 FastAPI 时,我偶尔会收到 ValueError:

我认为我发送的数据没有问题,因为我没有发送id字段,所以也许我的 SQLModel 配置错误?


型号

编辑:决定尝试这种方法用 uuid.UUID 替换 UUID4,但效果不佳:


Uvicorn 调试

0 投票
1 回答
267 浏览

json - 如何在 SQLModel 中使用 JSON 列

我正在尝试通过 SQLModel 定义一个 JSON 列:

代码来自SQLModel,但由“元”属性扩展。

将上面的代码与示例代码的其余部分(设置 sqlite,添加数据)一起使用,我收到以下错误:

我试图通过

但这会导致另一个错误:

我只使用 SQLAlchemy 进行了尝试,它已经奏效了。

那么有什么想法可以在 SQLModel 和 SQLAlchemy 之间为 JSON 字段完成“连接”吗?

更新:我还测试了将其设置为可选并给它一个默认值。没有成功(2.再次出错):

小提示:即使JSON是从 导入SQLModel,最终还是从 导入,SQLAlchemy.sqltypes没有任何变化。

0 投票
1 回答
236 浏览

sqlalchemy - 未创建带有 SQLModel 用户表的数据库适配器的 fastapi fastapi-users

我正在尝试使用fastapi 用户包快速将注册和身份验证系统添加到我的使用 PostgreSQL 数据库的 FastAPI 项目中。我正在使用asyncio能够创建异步函数。

一开始,我只使用了 sqlAlchemy,我在这里尝试了他们的示例。我将这些代码行添加到我的 app/app.py 以在服务器启动时创建数据库。一切都像魅力一样。表用户是在我的数据库上创建的。

由于我使用的是 SQLModel,因此我将FastAPI Users - SQLModel 的数据库适配器添加到我的虚拟 en 包中。我添加了这些行以便fastapi_users/db/__init__.py能够使用 SQL 模型数据库。

我还修改app/users.py了 , 以SQLModelUserDatabase代替 sqlAchemy 使用。

app/dp.py使用SQLModelUserDatabase, SQLModelBaseUserDB, 这是完整的代码app/db.py

运行代码后,根本不会创建表。我想知道可能是什么问题。我无法理解。任何想法?