diesel_json
Provides a wrapper diesel_json::Json
type that can be directly used
to wrap serde serializable, deserializable structures and recognize them
as queryable, insertable JsonB fields.
Getting started
Add diesel_json dependency to Cargo.toml.
- Diesel 2.0 supported:
diesel_json = "0.2"
- Diesel 1.4 supported:
diesel_json = "0.1"
Wrap data structures into diesel_json::Json
type.
use Json;
Json
type provides new
function for object initialization, implements Deref
,
DerefMut
, AsRef
, AsMut
and other traits that maps data access directly to underlying data.
See tests/postgresql.rs
for example use.
Why should I use this library?
Without wrapper type for each unique type you store as JsonB field you
would need to use serde_json::Value
directly
or implement your own implementation for following traits:
TODO:
- Support not only JsonB, but also Json postgres type
- Support more database drivers
- PostgreSQL
- MySql
- SQLite
- Improve testing of the library
- Test insertion and retrieval of nullable/non-nullable JsonB postgresql fields.
- Add support and test Json field insertion and retrieval
- TODO(Expand): Add support for other database driver Json fields