我有一个rails 3.2应用程序,我正在使用宝石 高压 对于我的公共页面。然而,它似乎工作正常,但是,我希望能够将一些子目录放在我的页面文件夹中。

例如:

/pages
--/directory_1
----index.html.erb
--/directory_2
----index.html.erb

在这个例子中,我想将浏览器指向 pages/directory_1/index, 等等文件索赔是可能的:

您可以在目录结构中嵌套页面,如果这是从您的URL透视图进行了意义:LINK_TO“Q4报告”,PAGE_PATH(“关于/公司/策略/小时/ en_US / BIZ /销售/季度 - 四”)

但是这样的东西不适合我。

我用命名空间尝试了:

namespace :directory_1 do
  match "pages/:id" => "high_voltage/pages#show"
end

但是当然,那就去了 directory_1/high_voltage/pages#show, ,这是错误的。

只是做比赛 "pages/directory_1/:id" => "high_voltage/pages#show" 附带两个问题:它不允许在Pages目录中的任何视图,并且在不同子目录中使用相同的文件名的视图将变得混淆。

那么如何用高电压在我的页面目录内完成嵌套目录?

有帮助吗?

解决方案

只需在内部创建目录结构 app/views/pages 反映您需要的URL层次结构。

例如,如果您创建了名为的视图 about.html.erb 与路径 app/views/pages/about_me/about.html.erb, ,您将通过使用

<%= link_to "About", page_path("about_me/about") %>

我在当前项目中获得了这项确切的解决方案。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top