services/src/main.rs

41 lines
910 B
Rust

#[macro_use]
extern crate rocket;
#[launch]
fn rocket() -> _ {
rocket::build()
.attach(Template::fairing())
.mount("/", routes![show_services])
}
use ::services::establish_connection;
use diesel::prelude::*;
use services::models::*;
use rocket_dyn_templates::Template;
#[get("/")]
fn show_services() -> Template /*std::string::String*/ {
use ::services::schema::services::dsl::*;
let connection = &mut establish_connection();
let results = services
.limit(5)
.select(Services::as_select())
.load(connection)
.expect("Error loading services");
let mut service_urls = Vec::new();
for service in &results {
service_urls.push(&service.url);
}
let services_num = &results.len().to_string();
let mut btreemap = std::collections::BTreeMap::new();
btreemap.insert("services", service_urls);
btreemap.insert("services_num", vec![services_num]);
Template::render("hello", &btreemap)
}