首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails-4个自定义路线

Rails-4个自定义路线
EN

Stack Overflow用户
提问于 2015-10-08 21:58:08
回答 1查看 31关注 0票数 1

我正在尝试提供用户菜单的方法。作为一个原型,我最终用routes.rb编写了这类代码。我想知道的是,有没有更紧凑的方法来提供相同的效果,而不会失去太多的清晰度?

代码语言:javascript
复制
  get( 'ag',
    :action         => :ag,
    :controller     => 'navigation/main_menu' )

  get( 'menu/ag',
    :action         => :ag,
    :controller     => 'navigation/main_menu' )

  get( 'navigation/ag',
    :action         => :ag,
    :controller     => 'navigation/main_menu' )

  get( 'navigation/ag/journals',
    :action         => :journals,
    :controller     => 'navigation/ag/main_menu' )

  get( 'ap',
    :action         => :ap,
    :controller     => 'navigation/main_menu' )

  get( 'menu/ap',
    :action         => :ap,
    :controller     => 'navigation/main_menu' )

  get( 'navigation/ap',
    :action         => :ap,
    :controller     => 'navigation/main_menu' )

  get( 'menu/ap/journals',
    :action         => :journals,
    :controller     => 'navigation/ap/main_menu' )

  get( 'navigation/ap/journals',
    :action         => :journals,
    :controller     => 'navigation/ap/main_menu' )

  get( 'ar',
    :action         => :ar,
    :controller     => 'navigation/main_menu' )

  get( 'menu/ar',
    :action         => :ar,
    :controller     => 'navigation/main_menu' )

  get( 'navigation/ar',
    :action         => :ar,
    :controller     => 'navigation/main_menu' )

  get( 'menu/ar/journals',
    :action         => :journals,
    :controller     => 'navigation/ar/main_menu' )

  get( 'navigation/ar/journals',
    :action         => :journals,
    :controller     => 'navigation/ar/main_menu' )

  get( 'menu/currencies',
    :action         => :index,
    :controller     => 'navigation/ag/currencies_menu' )
EN

回答 1

Stack Overflow用户

发布于 2016-05-03 23:45:47

至少,您可以将使用类似控制器的所有路由分组,如下所示:

代码语言:javascript
复制
controller 'navigation/main_menu' do
  get 'ag', :action => :ag
  get 'menu/ag', :action => :ag
  get 'navigation/ag', :action => :ag
  get 'ap', :action => :ap
  get 'menu/ap', :action => :ap
  get 'navigation/ap', :action => :ap
  get 'ar', :action  => :ar
  get 'menu/ar', :action => :ar
  get 'navigation/ar', :action => :ar
end

get( 'navigation/ag/journals',
    :action         => :journals,
    :controller     => 'navigation/ag/main_menu' )

controller 'navigation/ap/main_menu' do
  get 'menu/ap/journals', :action => :journals
  get 'navigation/ap/journals', :action => :journals
end

controller 'navigation/ar/main_menu' do
  get 'menu/ar/journals', :action => :journals
  get 'navigation/ar/journals', :action => :journals
end

get( 'menu/currencies',
  :action         => :index,
  :controller     => 'navigation/ag/currencies_menu' )
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33017939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档