1 use diesel::{result::Error, *};
3 aggregates::site_aggregates::SiteAggregates,
4 schema::{site, site_aggregates},
7 use serde::{Deserialize, Serialize};
9 #[derive(Debug, Serialize, Deserialize, Clone)]
12 pub counts: SiteAggregates,
16 pub fn read(conn: &PgConnection) -> Result<Self, Error> {
17 let (site, counts) = site::table
18 .inner_join(site_aggregates::table)
19 .select((site::all_columns, site_aggregates::all_columns))
20 .first::<(Site, SiteAggregates)>(conn)?;
22 Ok(SiteView { site, counts })