Ruby on rails RubyonRailsREST:为POST请求定制URL模式
我是RubyonRails新手,需要一些帮助来实现REST协议 每当你在REST上发表文章时,你都会得到一个URL,例如Ruby on rails RubyonRailsREST:为POST请求定制URL模式,ruby-on-rails,rest,routing,rubygems,rails-routing,Ruby On Rails,Rest,Routing,Rubygems,Rails Routing,我是RubyonRails新手,需要一些帮助来实现REST协议 每当你在REST上发表文章时,你都会得到一个URL,例如http://my-site.com/id/1 我需要一个自定义的URL格式的响应,我在上面的例子中给出了。 假设我正在对参数123 我正在寻找的定制响应是http://my-site.com/123/id/1 我想要实现的是,无论我在post期间传递了什么参数ID,我都希望它作为响应URL输出的一部分 感谢您的帮助。您可以在控制器中指定任何URL,例如: def create
http://my-site.com/id/1
我需要一个自定义的URL格式的响应,我在上面的例子中给出了。
假设我正在对参数123
我正在寻找的定制响应是http://my-site.com/123/id/1
我想要实现的是,无论我在post期间传递了什么参数ID,我都希望它作为响应URL输出的一部分
感谢您的帮助。您可以在控制器中指定任何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
如果您使用的是Rails 3,您可以使用适当的控制器/操作添加此路由
match ':main_id/id/:id', :controller => 'foo', :action => "bar", :via => :post, :as => main_id
然后您可以只使用helper main_id_路径(main_id,@record)