Как найти маршруты или использовать относительный URL с динамическими полями

Я пытаюсь добавить маршруты к одному из используемых мной плагинов (Discourse Tab Bar), но при поиске на форуме Meta не смог найти ничего релевантного или легко понятного для меня.

Я пытаюсь определить имя маршрута, который ведет, например, к:

domain.com/u/admin/follow/feed

Я знаю, что могу использовать либо предопределенное имя маршрута, либо относительный URL. Вот вопрос:

  1. Как найти список всех предопределенных маршрутов? (если такой список вообще существует)

  2. Как использовать относительный URL, когда в URL содержится имя пользователя (или другой динамический текст, например, названия групп)? Например, для URL в панели настроек.

Это я знаю. :slightly_smiling_face: Вы можете заменить /u/username на my, чтобы создать универсальную ссылку.

Например:

https://meta.discourse.org/u/jammydodger/preferences/account

Превращается в

https://meta.discourse.org/my/preferences/account

https://meta.discourse.org/my/preferences/account

Спасибо @JammyDodger, это очень помогло.

Доп.: Я всё ещё ищу ответ по поводу маршрутов, потому что, похоже, для темы, которую я использую (https://meta.discourse.org/t/discourse-tab-bar-for-mobile/), при использовании относительного URL активная кнопка не меняет цвет, как должна.

Здравствуйте,

Я также использую плагины Discourse Tab Bar и Follow. Я также добавил URL /my/follow/feed в Discourse Tab Bar. Активация вкладки не работала и на моём форуме :grin: Теперь я применил небольшой CSS-хак, чтобы это заработало.

Я нацеливаюсь на текущий класс body — .user-follow-page, это помогает нам сохранить изменения CSS именно на странице Follow. С помощью этого класса мы можем легко выбрать соответствующую вкладку в Discourse Tab Bar.

Нам нужно изменить цвет застрявшей активной вкладки на цвет по умолчанию (неактивной) и добавить цвет активной вкладки той вкладке, у которой data-destination равен /my/follow/feed.

data-destination — это URL, который вы настроили в компоненте темы Tab Bar для вкладок.

Добавьте это в новый компонент в секцию CSS для мобильных устройств.

body.user-follow-page {
  .d-tab-bar {
    .tab {
      &.active {
        color: var(--primary-medium);
      }
      &[data-destination="/my/follow/feed"] {
        color: var(--tertiary);
      }
    }
  }
}

Полагаю, это вот здесь: discourse/app/assets/javascripts/discourse/app/routes/app-route-map.js at 9d5da2b383765becb824a8f3ff3665abc8e527fa · discourse/discourse · GitHub

Превосходный ответ. :heart: :awthanks: