MCPcopy Create free account
hub / github.com/SeaQL/sea-orm / list

Function list

examples/rocket_okapi_example/api/src/okapi_example.rs:78–107  ·  view source on GitHub ↗
(
    conn: Connection<Db>,
    page: Option<u64>,
    posts_per_page: Option<u64>,
)

Source from the content-addressed store, hash-verified

76#[openapi(tag = "POST")]
77#[get("/?<page>&<posts_per_page>")]
78async fn list(
79 conn: Connection<Db>,
80 page: Option<u64>,
81 posts_per_page: Option<u64>,
82) -> R<dto::PostsDto> {
83 let db = conn.into_inner();
84
85 // Set page number and items per page
86 let page = page.unwrap_or(1);
87 let posts_per_page = posts_per_page.unwrap_or(DEFAULT_POSTS_PER_PAGE);
88 if page == 0 {
89 let m = error::Error {
90 err: "error getting posts".to_string(),
91 msg: Some("'page' param cannot be zero".to_string()),
92 http_status_code: 400,
93 };
94 return Err(m);
95 }
96
97 let (posts, num_pages) = Query::find_posts_in_page(&db, page, posts_per_page)
98 .await
99 .expect("Cannot find posts in page");
100
101 Ok(Json(dto::PostsDto {
102 page,
103 posts_per_page,
104 num_pages,
105 posts,
106 }))
107}
108
109/// # get post by Id
110#[openapi(tag = "POST")]

Callers

nothing calls this directly

Calls 1

into_innerMethod · 0.80

Tested by

no test coverage detected