Flesh out database examples in the API documentation:

* Demonstrate multiple databases in ROCKET_DATABASES environment variable.
  * Add a second example of connection guard type creation.
This commit is contained in:
Peter Farr 2019-02-07 10:21:07 -08:00 committed by Jeb Rosen
parent ecc17d191f
commit 622f4f399c
1 changed files with 23 additions and 1 deletions

View File

@ -177,7 +177,14 @@
//! guide](https://rocket.rs/v0.4/guide/configuration/#environment-variables):
//!
//! ```bash
//! ROCKET_DATABASES={my_db={url="db.sqlite"}}
//! ROCKET_DATABASES='{my_db={url="db.sqlite"}}'
//! ```
//!
//! Multiple databases can be specified in the `ROCKET_DATABASES` environment variable
//! as well by comma separating them:
//!
//! ```bash
//! ROCKET_DATABASES='{my_db={url="db.sqlite"},my_pg_db={url="postgres://root:root@localhost/my_pg_db"}}'
//! ```
//!
//! ## Guard Types
@ -203,6 +210,21 @@
//! # }
//! ```
//!
//! Other databases can be used by specifying their respective [`Poolable`]
//! type:
//!
//! ```rust
//! # extern crate rocket;
//! # #[macro_use] extern crate rocket_contrib;
//! # #[cfg(feature = "postgres_pool")]
//! # mod test {
//! use rocket_contrib::databases::postgres;
//!
//! #[database("my_pg_db")]
//! struct MyPgDatabase(postgres::Connection);
//! # }
//! ```
//!
//! The macro generates a [`FromRequest`] implementation for the decorated type,
//! allowing the type to be used as a request guard. This implementation
//! retrieves a connection from the database pool or fails with a