0

我是 Ruby On Rails 的新手,需要一些帮助来实现 REST 协议。

每当您在 REST 上进行 POST 时,您都会返回一个 URL,例如http://my-site.com/id/1 ,我需要一个 URL 格式的自定义响应,我在上面的示例中给出了该响应。假设我正在发布关于参数<main-id>123</main-id> 的帖子我正在寻找的自定义响应是http://my-site.com/123/id/1 我想要实现的是,无论我在帖子期间传递的任何参数 ID,我都希望将其作为响应 URL 输出的一部分。

感谢您提前提供任何帮助。

4

2 回答 2

0

如果您使用的是 Rails 3,您可以使用适当的控制器/操作添加此路由

 match ':main_id/id/:id', :controller => 'foo', :action => "bar", :via => :post, :as => main_id

然后你可以使用助手 main_id_path(main_id, @record)

于 2011-07-20T01:31:50.647 回答
0

您可以在控制器中指定任何 URL,例如:

def create
  ... # create record here
  redirect_to "/#{params[:main_id]}/id/#{@record.id}"
end

当然,您可能希望根据您定义的路线使用 url 帮助程序:

def create
  ... # create record here
  redirect_to my_oddball_path(@record, :main_id => 123)
end
于 2011-07-20T00:57:50.680 回答