В моём плагине в файле 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
и получить публичный ключ так, как мне нужно. ![]()
Не желая останавливаться на достигнутом (а пользователи почти наверняка будут копировать/вставлять это, так что лишние 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.