Ruby on rails 如何使用id为rails路由别名?

Ruby on rails 如何使用id为rails路由别名?,ruby-on-rails,routes,Ruby On Rails,Routes,我有以下路线: get '/welcome', to: redirect('/welcome/1') get 'welcome/:id' => 'users#welcome' 重定向路由执行301到/welcome/1 我希望它只执行id为1的users#welcome,而不是重定向 如何执行此操作?您可以为路由指定路径名,并将id作为如下参数传递 get 'welcome/:id' => 'users#welcome', as: :welcome 然后像这样将id作为参数传递

我有以下路线:

get '/welcome', to: redirect('/welcome/1')
get 'welcome/:id' => 'users#welcome'
重定向路由执行301到/welcome/1

我希望它只执行id为1的users#welcome,而不是重定向


如何执行此操作?

您可以为路由指定路径名,并将id作为如下参数传递

get 'welcome/:id' => 'users#welcome', as: :welcome
然后像这样将id作为参数传递

<%= link_to 'Button', welcome_path(id) %>

您需要:

get 'welcome', to: 'users#welcome', defaults: { id: 1 }