27次重大版本更新
0.47.0 | 2024年7月23日 |
---|---|
0.45.0 | 2024年5月13日 |
0.42.1 | 2024年3月25日 |
0.35.2 | 2023年12月21日 |
0.22.0 | 2023年7月31日 |
#1946 在 数据库接口
每月 132次下载
30KB
547 行
Shuttle Turso
此插件允许服务连接到Turso数据库。Turso是基于libSQL(SQLite的一个分支)的边缘托管分布式数据库。
用法
重要:目前Shuttle还无法为您配置数据库(尚未实现)。这意味着您需要在他们的网站上创建账户,并按照创建数据库和创建访问令牌的几个步骤进行操作。
通过运行 cargo add shuttle-turso
将 shuttle-turso
添加到您服务的依赖项中。通过在您的Shuttle main
装饰函数中添加 shuttle_turso::Turso
属性,将提供此资源。
它返回一个 libsql::Connection
。当本地运行时,它将实例化一个名为您服务的本地SQLite数据库,而不是连接到您的边缘数据库。
如果您想本地运行时连接到远程数据库,可以指定 local_addr
参数。在这种情况下,令牌将从您的 Secrets.dev.toml
文件中读取。
示例
对于Axum服务器,您的main函数将如下所示
use libsql::Connection;
use shuttle_axum::ShuttleAxum;
#[shuttle_runtime::main]
async fn app(
#[shuttle_turso::Turso(
addr="libsql://my-turso-db-name.turso.io",
token="{secrets.DB_TURSO_TOKEN}"
)] client: Connection,
) -> ShuttleAxum {}
参数
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
addr | str |
"" |
要连接的数据库的URL。应以下列格式之一开始: libsql:// 或 https:// 。 |
token | str |
"" |
用于对Turso数据库进行认证的令牌值。您可以使用字符串插值从您的Secret.toml 文件中读取秘密。 |
local_addr | 选项<str> |
无 |
在本地运行服务时使用的URL。如果没有提供,则默认为名为<服务名称>.db |
依赖
~48MB
~1M SLoC