Как добавить маршрут к корневому пути

В моём плагине в файле config/routes.rb есть такой маршрут:

Pfaffmanager::Engine.routes.draw do
  get "/ssh-key/:hostname" => "serverkeys#get_pub_key_by_hostname", constraints: { end

И я могу выполнить

  curl https://www.pfaffmanager.com/pfaffmanager/ssh-key/test.myforum.us

и получить публичный ключ так, как мне нужно. :tada:

Не желая останавливаться на достигнутом (а пользователи почти наверняка будут копировать/вставлять это, так что лишние 9 символов ни о чём не говорят), я хочу иметь возможность выполнить

  curl https://www.pfaffmanager.com/ssh-key/test.myforum.us

Я просмотрел множество других плагинов, и кажется, что что-то вроде этого должно сработать:

Discourse::Application.routes.prepend do
  get "/ssh-key/:hostname" => "serverkeys#get_pub_key_by_hostname", constraints: { hostname: /[^\/]+/ }
end

Но это вообще не работает. Я пробовал несколько вариантов (я перепробовал кучу всего, и на самом деле не должен был тратить время на эту бессмысленную затею), и казалось, что маршрут определяется верно, но затем мне нужно было бы сделать что-то ещё, чтобы указать, что контроллер следует искать в pfaffmanager/get_pub_key_by_name.

Вы пробовали следовать этому

и изменить параметр at: соответствующим образом?

Спасибо, Рафаэль! Это помогло мне справиться.

По сути, я просто подключил свой плагин по пути /, а затем добавил префикс /pfaffmanager к маршрутам в ....routes.draw. Как и в большинстве таких случаев, ответ становится очевидным, как только я его нахожу.

Другой способ сделать это выглядит так: