我有一个rails应用程序,但我需要将旧路线从php应用程序路由到我的新rails路线(因为与它们相关的旧谷歌广告)。我看得太远了,不知道如何解决我的问题。
我有一个视频控制器,我的新视频使用"友好id"。现在,我有一些老路线,它们既使用蛞蝓也使用id。我需要将这些旧路线重定向到我的新路线。我知道我需要检查的是视频是否为零,但我正在努力找出如何定义鼻涕虫的去向。
我的问题:我正在尝试进行简单的重新路由,但我的控制器正在尝试定位id,但无法找到它们(因为嵌段不再有效),并引发错误。我有一个6个视频的列表,我需要重新路由到我的新路线。
关于我缺少的东西有什么建议吗?
路线
get '/videos/toys' => redirect('/videos')
get '/videos/88' => redirect('/videos/cool-video')
get '/videos/1388' => redirect('/videos/better-video')
get '/videos/tech-video' => redirect('/videos/technologies-video')
例如,我有一个技术视频,旧的鼻涕虫,需要转到新的"技术视频",或者我有一张id为'88'的视频,需要转到"酷视频"
控制器
(bottom of controller)
private
def set_video
@video = Video.friendly.find(params[:id])
if @video.nil?
**method goes here**
end
end
正如我们在聊天中发现的那样,确保没有带有'videos'
的路线
(包括resources :videos
)
发生在重定向上方的路由文件中,因为包含/videos/:id
的路由将在重定向生效之前匹配。
祝你好运!!