diff --git a/src/krate.rs b/src/krate.rs index d70176becf3..77179c81dc9 100644 --- a/src/krate.rs +++ b/src/krate.rs @@ -672,8 +672,8 @@ pub fn index(req: &mut Request) -> CargoResult { query = query.filter(crates::id.eq_any( crates_categories::table.select(crates_categories::crate_id) .inner_join(categories::table) - .filter(categories::category.eq(cat).or( - categories::category.like(format!("{}::%", cat)))) + .filter(categories::slug.eq(cat).or( + categories::slug.like(format!("{}::%", cat)))) )); } else if let Some(user_id) = params.get("user_id").and_then(|s| s.parse::().ok()) { query = query.filter(crates::id.eq_any(( diff --git a/src/tests/krate.rs b/src/tests/krate.rs index 62f821b6a41..83a8cb6088f 100644 --- a/src/tests/krate.rs +++ b/src/tests/krate.rs @@ -143,8 +143,8 @@ fn index_queries() { let mut response = ok_resp!(middle.call(req.with_query("keyword=kw2"))); assert_eq!(::json::(&mut response).crates.len(), 0); - ::new_category("cat1", "cat1").find_or_create(req.db_conn().unwrap()).unwrap(); - ::new_category("cat1::bar", "cat1::bar").find_or_create(req.db_conn().unwrap()).unwrap(); + ::new_category("Category 1", "cat1").find_or_create(req.db_conn().unwrap()).unwrap(); + ::new_category("Category 1::Ba'r", "cat1::bar").find_or_create(req.db_conn().unwrap()).unwrap(); Category::update_crate(req.db_conn().unwrap(), &krate, &["cat1"]).unwrap(); Category::update_crate(req.db_conn().unwrap(), &krate2, &["cat1::bar"]).unwrap(); let mut response = ok_resp!(middle.call(req.with_query("category=cat1")));