17 个版本
0.3.7 | 2024 年 7 月 11 日 |
---|---|
0.3.1 | 2024 年 6 月 27 日 |
0.2.2 | 2024 年 2 月 4 日 |
365 在 数据库接口 中
每月下载 203 次
在 3 crates 中使用
120KB
2K SLoC
supabase_rs
supabase_rs
是一个极轻量级的 Supabase SDK,用于与数据库交互。
我正在积极覆盖整个 Supabase API,包括 Auth、实时、存储等
功能标志
nightly
:启用GraphQL
模块不通过 REST 进行交互。storage
:启用Storage
模块与 Supabase 存储交互。rustls
:强制客户端使用rustls
而不是OpenSSL
。
夜间构建
如果您想早期使用 GraphQL,可以启用 nightly
标志,这显然不是生产就绪的。
夜间构建将发送警告消息,要禁用 nightly
警告消息
在您的 .env
中禁用它,如下所示
SUPABASE_RS_NO_NIGHTLY_MSG=true
- 注意 GraphQL 和 REST 可以一起使用,因为客户端是从最初认证的地方共享的。
数据库功能
- 更新
- 插入
- 唯一插入
- 批量插入
- 更新插入
- 批量更新插入
- 删除(仅按 ID)
- 选择
- 选择特定列
- 应用过滤器
- 计算总记录数
在 select()
上进行高级过滤
- 列等于一个值
- 列不等于一个值
- 列大于一个值
- 列小于一个值
- 列大于或等于一个值
- 列小于或等于一个值
- 排序结果
- 限制返回的行数
- 以 CSV 格式检索
存储
- 从公共存储桶下载文件
- 保存文件
- 将文件保存到私有存储桶
- 上传文件
- 生成签名 URL
- 删除文件
GraphQL
- 查询验证
- 调用查询
- 调用可变查询
- 响应解析
身份验证
// 即将推出 //
实时
// 即将推出 //
Supabase SDK for Rust
这是一个非官方的Rust SDK,用于Supabase,因为目前还没有官方的Rust SDK。
功能
Insert
:向表中添加新行。Insert if unique
:只有在不会违反UNIQUE约束的情况下,才添加新行。Update
:根据唯一标识符修改表中的现有行。Select
:如果不存在,则向表中插入新行;如果存在,则更新它。Select with count
:从表中选择行,并计算匹配筛选条件的行数。Select with filter
:根据筛选条件从表中选择行。Select with filter and count
:根据筛选条件从表中选择行,并计算匹配筛选条件的行数。Delete
:根据唯一标识符从表中删除行。
Graphql功能
Query request
:运行到Supabase的GraphQL查询。
功能标志
storage
:启用Storage
模块与 Supabase 存储交互。
Cargo.toml
[dependencies]
supabase-rs = "0.3.7"
// With the [storage] feature
supabase-rs = { version = "0.3.7", features = ["storage"] }
//!
用法
首先,请确保您已初始化Supabase客户端初始化SupabaseClient!!
身份验证
Supabase客户端使用Supabase URL和Supabase密钥进行初始化。这些是可以在以下名称或任何其他名称下设置的环
境变量,位于以下名称下的.env
文件中:
SUPABASE_URL=
SUPABASE_KEY=
示例将在文档中提供。
贡献者
Izyuumi - 改进了更新方法中的行ID路由
依赖关系
~9–24MB
~318K SLoC