首页 > 解决方案 > 在部署到子目录的 Rails 应用程序中隐藏路由中的控制器

问题描述

我在一个子目录中部署了一个 Rails 应用程序(如果重要的话,使用 Apache 和Passenger)。该应用程序部署到 /agents 子目录。应用程序的大部分逻辑都嵌套在 Agents 控制器中,并在其下嵌套了资源。

这意味着大多数网址都是domain.com/agents/agents/1domain.com/agents/agents/1/clients类似的。

有没有办法将代理隐藏在路由的控制器部分中,以便使用此控制器的路由成为domain.com/agents/1domain.com/agents/1/clients替代?

标签: ruby-on-railsroutesruby-on-rails-5

解决方案


您可以使用类似这样的方式更改路径文本

resources :agents, :path => "a"

或者其他的东西。我不确定完全删除所有内容的效果如何,因为我从未尝试过,但给

resources :agents, :path => ""

试试看。我只是不确定它是否会导致文件更下方的路由错误


推荐阅读