diesel-adapter

Crates.io Docs Build Status

An adapter designed to work with casbin-rs.

Install

Add it to Cargo.toml

casbin = { version = "0.4.0" } diesel-adapter = { version = "0.4.0", features = ["postgres"] } async-std = "1.5.0"

Example

```rust use casbin::prelude::*; use diesel_adapter::{DieselAdapter, ConnOptions};

[async_std::main]

async fn main() -> Result<()> { let mut m = Box::new(DefaultModel::fromfile("examples/rbacmodel.conf").await?);

let mut conn_opts = ConnOptions::default();
conn_opts
    .set_hostname("127.0.0.1")
    .set_port(5432)
    .set_host("127.0.0.1:5433") // overwrite hostname, port config
    .set_database("casbin")
    .set_auth("casbin_rs", "casbin_rs");

let a = Box::new(DieselAdapter::new(conn_opts)?);
let mut e = Enforcer::new(m, a).await?;
Ok(())

} ```

Features

Attention: 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.