mirror of https://github.com/rwf2/Rocket.git
42 lines
1.4 KiB
Markdown
42 lines
1.4 KiB
Markdown
# Rocket Todo Example
|
|
|
|
This example makes use of a SQLite database via `diesel` to store todo tasks. As
|
|
a result, you'll need to have `sqlite3` and its headers installed:
|
|
|
|
* **OS X:** `brew install sqlite`
|
|
* **Debian/Ubuntu:** `apt-get install libsqlite3-dev`
|
|
* **Arch:** `pacman -S sqlite`
|
|
|
|
## Running
|
|
|
|
**Before running, building, or testing this example, you'll need to ensure the
|
|
following:**
|
|
|
|
1. A SQLite database file with the proper schema is present.
|
|
|
|
On a Unix machine or with bash installed, you can simply run the
|
|
`boostrap.sh` script to create the database. The script installs the
|
|
`diesel_cli` tools if they're not already installed and runs the
|
|
migrations. The script will output a `DATABASE_URL` variable.
|
|
|
|
You can also install the Diesel CLI and run the migrations manually with
|
|
the following commands:
|
|
|
|
```
|
|
# install Diesel CLI tools
|
|
cargo install diesel_cli --no-default-features --features sqlite
|
|
|
|
# create db/db.sql
|
|
DATABASE_URL=db/db.sql diesel migration run
|
|
```
|
|
|
|
2. A `DATABASE_URL` environment variable is set that points to the SQLite
|
|
database file.
|
|
|
|
Use the `DATABASE_URL` variable emitted from the `bootstrap.sh` script, or
|
|
enter it manually, as follows:
|
|
|
|
* `DATABASE_URL=db/db.sql cargo build`
|
|
* `DATABASE_URL=db/db.sql cargo test`
|
|
* `DATABASE_URL=db/db.sql cargo run`
|