0

我在 Rails 中遇到 RESTful URL 的问题。

我有 site.com/services 网址,我想在该类别下有子页面,就是这样:site.com/services/arquitecture、site.com/services/plumbing 等。

我在该类别下提供的页面是“静态”.rhtml 文件,我希望它们位于同一个控制器上。

有没有办法做到这一点?我尝试过嵌套资源,但我发现很难完全理解。

谢谢

4

2 回答 2

0

这是一种简单的方法。

假设您的 routes.rb 中有一个“服务”资源,您不需要嵌套资源 - 只需在您的路由定义中添加一个 :members 哈希:

map.resources :services, :member => {:plumbing => :get, :arquitecture => :get, ...}

然后在您的服务控制器中为每个静态页面定义空操作。如果这些页面是真正静态的,您可以对这些页面使用页面缓存,并且 Rails 将在第一次调用每个操作后完全绕过控制器。

于 2010-05-15T03:13:57.850 回答
0

资源不是为提供静态页面而构建的。使用常规的非 RESTful 路由,您可以在其中准确定义哪些 URL 映射到哪个控制器和操作。

于 2010-05-14T22:19:11.250 回答