Diesel Adapter is the Diesel adapter for Casbin-rs. With this library, Casbin can load policy from Diesel supported database or save policy to it.
Based on Diesel, The current supported databases are:
Add it to Cargo.toml
diesel-adapter = { version = "0.7.1", features = ["postgres"] }
async-std = "1.6.2"
Rename sample.env to .env and put DATABASE_URL, POOL_SIZE inside
```bash DATABASEURL=postgres://casbinrs:casbin_rs@127.0.0.1:5432/casbin
POOL_SIZE=8 ```
Or you can export DATABASE_URL, POOL_SIZE
bash
export DATABASE_URL=postgres://casbin_rs:casbin_rs@127.0.0.1:5432/casbin
export POOL_SIZE=8
```rust use dieseladapter::casbin::prelude::*; use dieseladapter::DieselAdapter;
async fn main() -> Result<()> { let mut m = DefaultModel::fromfile("examples/rbacmodel.conf").await?; let a = DieselAdapter::new()?; let mut e = Enforcer::new(m, a).await?; Ok(()) } ```
postgresmysqlAttention: postgres and mysql are mutual exclusive which means that you can only activate one of them. Currently we don't have support for sqlite, it may be added in the near future.