【问题标题】:Rails 4 Routing within Namespace命名空间内的 Rails 4 路由
【发布时间】:2017-11-09 06:43:40
【问题描述】:

我正在尝试将基地址 www.myplace.com/admin 设置为在下面的命名空间编码中定向到 www.myplace.com/admin/adminhub .我尝试了所有我能想到的组合,但无济于事。我试图遵循用于应用程序 / 的相同代码。

namespace :admin do
    ...
    get "adminhub"
    get 'admin', to: 'adminhub'

  end

【问题讨论】:

  • 基址?你是说root?
  • 不,我正在尝试将 www.myplace.com/admin 设置为解析为 www.myplace.com/admin/adminhub。在命名空间内。
  • 您可以在 admin/admin_controller#admin redirect_to "/admin/adminhub", status: 301 中进行重定向。这不是最佳做法,但火车似乎很久以前就离开了:)
  • 你的意思是get '/admin', to 'admin#adminhub'
  • @Pavan 当我把它放进去并重新启动我的服务器时,它会出错给我:'rb:84: syntax error, unexpected tSTRING_BEG, expecting keyword_do or '{' or '(' (SyntaxError) get '/sekret',到 'sekret#adminhub''

标签: ruby-on-rails ruby-on-rails-4 routing namespaces


【解决方案1】:

听起来您想将浏览器重定向到新 URL。您可以使用路由中的 redirect 助手来执行此操作。

get '/admin', to: redirect('/admin/adminhub')

这允许您从一条路径重定向到另一条路径。有关详细信息,请参阅 Rails 路由指南中的 Redirection section

【讨论】:

  • 我在命名空间代码中得到了这个:get '', to: redirect('/admin/adminhub')。感谢您的帮助。
  • 啊,有道理。如果您不想要尴尬的get '',您还可以在命名空间块之外进行更多操作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-01
  • 2011-02-16
  • 1970-01-01
相关资源
最近更新 更多