根据关联记录设置rails路由

时间:2016-04-06 18:46:39

标签: ruby-on-rails

我有(2)模型Item和Item_Type。

项目has_one:item_type

item_type架构:

Comparator<Patient>

我想设置一条类似于Collections.sort的路线,并展示与该item_type相关联的所有项目。

1 个答案:

答案 0 :(得分:0)

我将假设项目标题是唯一的。此外,您的架构设置方式,每个项目类型只能有一个项目,因此如果您希望为特定项目类型显示多个项目,则需要重构该项目。

这样的事情会起作用:

# routes.rb
get '/:title' => 'items#item_by_type_title

这将使例如yourserver.com/foo路线指向动作&#39; item_by_type_title&#39;在ItemsController上。然后,在您的项目控制器中:

def item_by_type_title
  @item_type = ItemType.find_by_title(params[:title])
  @item = @item_type.item
end