# Observer on "controller:edit-category.tabs" model not triggered

**URL:** https://meta.discourse.org/t/observer-on-controller-edit-category-tabs-model-not-triggered/385559
**Category:** Development
**Tags:** plugin-api
**Created:** [October 14, 2025, 3:38pm UTC](https://meta.discourse.org/t/observer-on-controller-edit-category-tabs-model-not-triggered/385559 "2025-10-14T15:38:22Z")
**Posts on this page:** 1
**Showing post:** 2

<div class="post-metadata">

### Author: ![Arkshine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/arkshine/32/298682_2.png) [@Arkshine](https://meta.discourse.org/u/Arkshine)
#### Post date: [October 18, 2025, 2:08am UTC](https://meta.discourse.org/t/observer-on-controller-edit-category-tabs-model-not-triggered/385559/2 "2025-10-18T02:08:04Z")

</div>

I was looking at your link, and the controller has been moved to /admin: [https://github.com/discourse/discourse/blob/main/app/assets/javascripts/admin/addon/controllers/edit-category/tabs.js](https://github.com/discourse/discourse/blob/main/app/assets/javascripts/admin/addon/controllers/edit-category/tabs.js)

I’m not sure why it doesn’t trigger. Maybe `@observes` doesn’t work well in `modifyClass`?

As an alternative, what do you think of:

```js
@action
saveCategory(data) {
  const oldParentId = this.model.parent_category_id;
  super.saveCategory(data);
  const newParentId = this.model.parent_category_id;

  if (oldParentId !== newParentId) {
    console.log("Apply some logic here when parent category changes");
  }
}

```

---

_[View the full topic](https://meta.discourse.org/t/observer-on-controller-edit-category-tabs-model-not-triggered/385559)._
