Пользовательский URL с использованием ресурсов - PullRequest
0 голосов
/ 21 января 2019

У меня есть маршруты, в которые я хотел бы добавить идентификатор доски, за которым следует ее слаг:

/boards/1234/example-board

Я могу добиться этого, написав следующее:

get '/boards/:id/:slug', to: 'boards#show'

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

resources :boards, only: [:index, :show]

Как я могу использовать свой собственный URL-адрес и применять его ко всем действиям на доске и любым вложенным маршрутам?

1 Ответ

0 голосов
/ 22 января 2019

Могу я спросить, зачем вам нужны id И slug?

Вы могли бы легко сделать resources :boards, only: [:index, :show], param: :slug

, а затем сделать Board.find_by_slug(params[:slug])

Если у вас есть оба варианта, вы можете попробовать:

Это не будет точно такой же порядок в вашем URL, но вы можете использовать scope

scope ':slug' do
   resources :boards, only: [:index, :show]
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...