2 个版本
0.1.1 | 2019 年 11 月 17 日 |
---|---|
0.1.0 | 2019 年 11 月 7 日 |
#4 in #graph-ql
77KB
2K SLoC
Wundergraph
Wundergraph 提供了一个平台,可以轻松通过 GraphQL 接口公开您的数据库。
示例
有关完整示例应用程序,请参阅 示例项目
#[macro_use] extern crate diesel;
use wundergraph::prelude::*;
table! {
heros {
id -> Integer,
name -> Text,
hair_color -> Nullable<Text>,
species -> Integer,
}
}
table! {
species {
id -> Integer,
name -> Text,
}
}
#[derive(Clone, Debug, Identifiable, WundergraphEntity)]
#[table_name = "heros"]
pub struct Hero {
id: i32,
name: String,
hair_color: Option<String>,
species: HasOne<i32, Species>,
}
#[derive(Clone, Debug, Identifiable, WundergraphEntity)]
#[table_name = "species"]
pub struct Species {
id: i32,
name: String,
heros: HasMany<Hero, heros::species>,
}
wundergraph::query_object!{
Query {
Hero,
Species,
}
}
构建
根据您选择的后端,您需要安装一个本地库。对于 postgresql 功能,需要 libpq
,对于 sqlite 功能,需要 libsqlite3
。
许可证
许可协议如下
- Apache 许可证 2.0 版本,(LICENSE-APACHE 或 https://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 https://opensource.org/licenses/MIT)
贡献
除非您明确说明,否则您有意提交的任何贡献,按照 Apache-2.0 许可证定义的工作,应按上述方式双许可,不附加任何额外的条款或条件。
依赖关系
~4.5–8MB
~145K SLoC