diff --git a/app/controllers/application.js b/app/controllers/application.js index 8d8216d742..b4646c22bf 100644 --- a/app/controllers/application.js +++ b/app/controllers/application.js @@ -28,6 +28,7 @@ export default Controller.extend(EKMixin, { queryParams: { q: this.searchQuery, page: 1, + all_keywords: null, }, }); }, diff --git a/app/controllers/search.js b/app/controllers/search.js index 4c08b87345..a9be8a51de 100644 --- a/app/controllers/search.js +++ b/app/controllers/search.js @@ -9,7 +9,7 @@ import PaginationMixin from '../mixins/pagination'; export default Controller.extend(PaginationMixin, { search: service(), - queryParams: ['q', 'page', 'per_page', 'sort'], + queryParams: ['all_keywords', 'page', 'per_page', 'q', 'sort'], q: alias('search.q'), page: '1', per_page: 10, diff --git a/app/routes/search.js b/app/routes/search.js index 62a8325e11..cbd74a0da6 100644 --- a/app/routes/search.js +++ b/app/routes/search.js @@ -2,8 +2,9 @@ import Route from '@ember/routing/route'; export default Route.extend({ queryParams: { - q: { refreshModel: true }, + all_keywords: { refreshModel: true }, page: { refreshModel: true }, + q: { refreshModel: true }, sort: { refreshModel: true }, }, diff --git a/src/controllers/krate/search.rs b/src/controllers/krate/search.rs index 4262d6f034..2b71702e88 100644 --- a/src/controllers/krate/search.rs +++ b/src/controllers/krate/search.rs @@ -99,7 +99,10 @@ pub fn search(req: &mut dyn Request) -> CargoResult { use diesel::sql_types::Array; sql_function!(#[aggregate] fn array_agg(x: T) -> Array); - let names: Vec<_> = kws.split_whitespace().map(|name| name.to_lowercase()).collect(); + let names: Vec<_> = kws + .split_whitespace() + .map(|name| name.to_lowercase()) + .collect(); query = query.filter( // FIXME: Just use `.contains` in Diesel 2.0