@@ -18,25 +18,18 @@ pub fn index(req: &mut dyn RequestExt) -> EndpointResult {
1818 let conn = req. db_read_only ( ) ?;
1919 let categories =
2020 Category :: toplevel ( & conn, sort, i64:: from ( options. per_page ) , i64:: from ( offset) ) ?;
21- let categories = categories. into_iter ( ) . map ( Category :: into) . collect ( ) ;
21+ let categories = categories
22+ . into_iter ( )
23+ . map ( Category :: into)
24+ . collect :: < Vec < EncodableCategory > > ( ) ;
2225
2326 // Query for the total count of categories
2427 let total = Category :: count_toplevel ( & conn) ?;
2528
26- #[ derive( Serialize ) ]
27- struct R {
28- categories : Vec < EncodableCategory > ,
29- meta : Meta ,
30- }
31- #[ derive( Serialize ) ]
32- struct Meta {
33- total : i64 ,
34- }
35-
36- Ok ( req. json ( & R {
37- categories,
38- meta : Meta { total } ,
39- } ) )
29+ Ok ( req. json ( & json ! ( {
30+ "categories" : categories,
31+ "meta" : { "total" : total } ,
32+ } ) ) )
4033}
4134
4235/// Handles the `GET /categories/:category_id` route.
@@ -67,19 +60,13 @@ pub fn show(req: &mut dyn RequestExt) -> EndpointResult {
6760 parent_categories : parents,
6861 } ;
6962
70- #[ derive( Serialize ) ]
71- struct R {
72- category : EncodableCategoryWithSubcategories ,
73- }
74- Ok ( req. json ( & R {
75- category : cat_with_subcats,
76- } ) )
63+ Ok ( req. json ( & json ! ( { "category" : cat_with_subcats } ) ) )
7764}
7865
7966/// Handles the `GET /category_slugs` route.
8067pub fn slugs ( req : & mut dyn RequestExt ) -> EndpointResult {
8168 let conn = req. db_read_only ( ) ?;
82- let slugs = categories:: table
69+ let slugs: Vec < Slug > = categories:: table
8370 . select ( ( categories:: slug, categories:: slug, categories:: description) )
8471 . order ( categories:: slug)
8572 . load ( & * conn) ?;
@@ -91,11 +78,5 @@ pub fn slugs(req: &mut dyn RequestExt) -> EndpointResult {
9178 description : String ,
9279 }
9380
94- #[ derive( Serialize ) ]
95- struct R {
96- category_slugs : Vec < Slug > ,
97- }
98- Ok ( req. json ( & R {
99- category_slugs : slugs,
100- } ) )
81+ Ok ( req. json ( & json ! ( { "category_slugs" : slugs } ) ) )
10182}
0 commit comments