diff --git a/app/assets/javascripts/discourse/app/models/topic.js b/app/assets/javascripts/discourse/app/models/topic.js index f59e5cbcb27..1794742628c 100644 --- a/app/assets/javascripts/discourse/app/models/topic.js +++ b/app/assets/javascripts/discourse/app/models/topic.js @@ -1,4 +1,4 @@ -import EmberObject from "@ember/object"; +import EmberObject, { computed } from "@ember/object"; import { alias, and, equal, notEmpty, or } from "@ember/object/computed"; import { Promise } from "rsvp"; import { resolveShareUrl } from "discourse/helpers/share-url"; @@ -214,11 +214,15 @@ const Topic = RestModel.extend({ return { type: "topic", id }; }, - @discourseComputed("category_id") - category() { + @computed("category_id") + get category() { return Category.findById(this.category_id); }, + set category(newCategory) { + this.set("category_id", newCategory?.id); + }, + @discourseComputed("url") shareUrl(url) { const user = User.current();