28 lines
867 B
Rust
28 lines
867 B
Rust
use axum::{routing::get, Router};
|
|
|
|
pub mod domain;
|
|
pub mod state;
|
|
pub mod views;
|
|
|
|
pub fn routes<S: state::AdminState + Clone + Send + Sync + 'static>() -> Router<S> {
|
|
Router::new()
|
|
.route("/", get(views::index::<S>).post(views::index_action::<S>))
|
|
.route("/app/:app", get(views::list_app::<S>))
|
|
.route(
|
|
"/app/:app/model/:model",
|
|
get(views::list_item_collection::<S>),
|
|
)
|
|
.route(
|
|
"/app/:app/model/:model/add",
|
|
get(views::new_item::<S>).post(views::create_item::<S>),
|
|
)
|
|
.route(
|
|
"/app/:app/model/:model/change/:id",
|
|
get(views::change_item::<S>).patch(views::update_item::<S>),
|
|
)
|
|
.route(
|
|
"/app/:app/model/:model/detail/:id",
|
|
get(views::view_item_details::<S>),
|
|
)
|
|
}
|