如何在REST“NEW”链接中包含params

时间:2011-09-16 03:14:25

标签: ruby-on-rails-3

我有一个名为'requests'的REST资源,如下所示:

resources :requests, :only => [:new, :create, :destroy]

我有一个页面,用户选择要加入的组。这意味着他们想要创建一个“新”请求。

我想传递组的ID以及链接,但它是一个REST资源。

<%= link_to "Join", new_request_path %>

但是如何在此链接中添加ID?

Rails 3。

1 个答案:

答案 0 :(得分:2)

一种简单的方法是(假设你加入的群组的id为'5')

link_to "Join" , new_request_path(:group_id => '5') 

并在控制器操作中以params [:group_id]的形式访问它。

但这不会是非常RESTful或Rails'ish'。如果您可以将其建模,就像请求属于某个组一样。然后你应该能做(假设你想加入@group):

link_to "Join" , new_group_request_path(@group)

阅读一些关于嵌套资源和在rails 3中嵌套路由的内容。如果你谷歌的话,那里有很多文章。

当然,上述内容会迫使您改变设计模型的方式。但那可能那很好!