Refactor rocket example

This commit is contained in:
Billy Chan 2021-09-20 15:15:39 +08:00 committed by Chris Tsang
parent b22753bebf
commit ce35317daf
3 changed files with 16 additions and 21 deletions

View File

@ -122,7 +122,6 @@ async fn list(
let paginator = Post::find()
.order_by_asc(post::Column::Id)
.paginate(&conn, posts_per_page);
let num_pages = paginator.num_pages().await.ok().unwrap();
// Fetch paginated posts
let posts = paginator
@ -130,16 +129,14 @@ async fn list(
.await
.expect("could not retrieve posts");
let flash = flash.map(FlashMessage::into_inner);
Template::render(
"index",
context! {
posts: posts,
flash: flash,
page: page,
posts_per_page: posts_per_page,
num_pages: num_pages,
posts: posts,
flash: flash.map(FlashMessage::into_inner),
num_pages: paginator.num_pages().await.ok().unwrap(),
},
)
}

View File

@ -79,28 +79,29 @@ async fn list(
page: Option<usize>,
flash: Option<FlashMessage<'_>>,
) -> Template {
// Set page number and items per page
let page = page.unwrap_or(0);
let posts_per_page = posts_per_page.unwrap_or(DEFAULT_POSTS_PER_PAGE);
// Setup paginator
let paginator = Post::find()
.order_by_asc(post::Column::Id)
.paginate(&conn, posts_per_page);
let num_pages = paginator.num_pages().await.ok().unwrap();
// Fetch paginated posts
let posts = paginator
.fetch_page(page)
.await
.expect("could not retrieve posts");
let flash = flash.map(FlashMessage::into_inner);
Template::render(
"index",
context! {
posts: posts,
flash: flash,
page: page,
posts_per_page: posts_per_page,
num_pages: num_pages,
posts: posts,
flash: flash.map(FlashMessage::into_inner),
num_pages: paginator.num_pages().await.ok().unwrap(),
},
)
}

View File

@ -181,29 +181,26 @@
//! // Set page number and items per page
//! let page = page.unwrap_or(0);
//! let posts_per_page = posts_per_page.unwrap_or(DEFAULT_POSTS_PER_PAGE);
//!
//!
//! // Setup paginator
//! let paginator = Post::find()
//! .order_by_asc(post::Column::Id)
//! .paginate(&conn, posts_per_page);
//! let num_pages = paginator.num_pages().await.ok().unwrap();
//!
//!
//! // Fetch paginated posts
//! let posts = paginator
//! .fetch_page(page)
//! .await
//! .expect("could not retrieve posts");
//!
//! let flash = flash.map(FlashMessage::into_inner);
//!
//!
//! Template::render(
//! "index",
//! context! {
//! posts: posts,
//! flash: flash,
//! page: page,
//! posts_per_page: posts_per_page,
//! num_pages: num_pages,
//! posts: posts,
//! flash: flash.map(FlashMessage::into_inner),
//! num_pages: paginator.num_pages().await.ok().unwrap(),
//! },
//! )
//! }