diff --git a/app/assets/javascripts/discourse/models/category.js b/app/assets/javascripts/discourse/models/category.js index 5d9f5ea14bb..b7d755ccab8 100644 --- a/app/assets/javascripts/discourse/models/category.js +++ b/app/assets/javascripts/discourse/models/category.js @@ -101,7 +101,8 @@ Discourse.Category.reopenClass({ }, findBySlugOrId: function(slugOrId) { - return Discourse.ajax("/categories/" + slugOrId + ".json").then(function (result) { + // TODO: all our routing around categories need a rethink + return Discourse.ajax("/category/" + slugOrId + "/show.json").then(function (result) { return Discourse.Category.create(result.category); }); } diff --git a/app/controllers/list_controller.rb b/app/controllers/list_controller.rb index 2f7740d1c85..a657777687c 100644 --- a/app/controllers/list_controller.rb +++ b/app/controllers/list_controller.rb @@ -26,7 +26,7 @@ class ListController < ApplicationController list = query.list_category(@category) end - list.more_topics_url = url_for(category_path(params[:category], page: next_page, format: "json")) + list.more_topics_url = url_for(category_list_path(params[:category], page: next_page, format: "json")) respond(list) end diff --git a/config/routes.rb b/config/routes.rb index 5d2f9eb6b53..d21dce1b47f 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -146,7 +146,6 @@ Discourse::Application.routes.draw do get 'p/:post_id/:user_id' => 'posts#short_link' resources :notifications - resources :categories match "/auth/:provider/callback", to: "users/omniauth_callbacks#complete", via: [:get, :post] match "/auth/failure", to: "users/omniauth_callbacks#failure", via: [:get, :post] @@ -168,11 +167,12 @@ Discourse::Application.routes.draw do resources :user_actions resources :education + resources :categories, :except => :show + get 'category/:id/show' => 'categories#show' + get 'category/:category.rss' => 'list#category_feed', format: :rss, as: 'category_feed' - get 'category/:category' => 'list#category' - get 'category/:category' => 'list#category' - get 'category/:category/more' => 'list#category' - get 'categories' => 'categories#index' + get 'category/:category' => 'list#category', as: 'category_list' + get 'category/:category/more' => 'list#category', as: 'category_list_more' # We've renamed popular to latest. If people access it we want a permanent redirect. get 'popular' => 'list#popular_redirect'