嵌套控制器中的Link_to动作?

时间:2009-08-25 04:40:34

标签: ruby-on-rails

所以我创建了一个动作,让我们在控制器'电梯'中称它为'加注'。 '电梯'嵌套在'建筑'中。

我应该创建哪些路线,或者我可以使用哪个link_to网址

/ buldings / 2 / elevators / 4 / raise会有效吗?

谢谢, 埃利奥特

1 个答案:

答案 0 :(得分:3)

如果你真的想要像这样嵌套它们,这就是路线。您没有指定Rails版本,因此这适用于最新版本,而不是仅仅在2.3 +中。

map.resources :buildings do |buildings|
  buildings.resources :elevators, :member => {:up => :put}
end

请注意您的操作的名称更改。请不要将行动命名为“加注”。这是内核中的一种方法。当他们尝试调试你的代码时,你会给某人一个动作。

你最终会得到一个看起来像这样的路径助手。

up_building_elevator_path(:building_id => 2, :elevator_id => 4)

设置路线后,您可以通过以下方式查看电梯可用的所有路线:

rake -T | grep elevator