Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为使用acts_as_树的页面创建嵌套路由_Ruby On Rails - Fatal编程技术网

Ruby on rails 为使用acts_as_树的页面创建嵌套路由

Ruby on rails 为使用acts_as_树的页面创建嵌套路由,ruby-on-rails,Ruby On Rails,我有一个页面模型,深入了一代人。我该如何做我的路线,以便 /关于 /关于/领导 /关于/愿景和使命 /接触 /加入 /加入/福利 工作 鼻涕虫来自友好的\u id插件,并且都是独一无二的。在路线的末尾: map.with_options :controller => 'pages' do |pages| pages.show_page ':id', :action => 'show' pages.show_

我有一个页面模型,深入了一代人。我该如何做我的路线,以便

/关于

/关于/领导

/关于/愿景和使命

/接触

/加入

/加入/福利

工作


鼻涕虫来自友好的\u id插件,并且都是独一无二的。

在路线的末尾:

  map.with_options :controller => 'pages' do |pages|
    pages.show_page                ':id',              :action  => 'show'
    pages.show_page_with_parent    ':id/:parent_id',   :action  => 'show'
  end
如果您希望生成指向它的链接:

show_page_with_parent_path(:id => page.name, :parent_id => page.parent.name)
当然,这是假设slug键就是名称

当然,您可以使用辅助功能进一步定制此解决方案:

例如:

def custom_show_page_path(page)
  if page.parent.nil?
    show_page_path(:id => page.name)
  else
    show_page_with_parent_path(:id => page.name, :parent_id => page.parent.name)
  end
end