rails路由中的自定义扩展

时间:2010-07-28 09:24:33

标签: ruby-on-rails

我必须提供rails生成的zip文件。 例如,从以下REST路由: http://foo.com/controller/show/filename.zip

我如何映射routes.rb以允许将zip文件(而不是在/ public中搜索静态文件)路由到我的控制器?

1 个答案:

答案 0 :(得分:4)

如果您使用map.resources中的config/routes.rb设置路线,那么我认为您已经拥有了所需的路线。我认为你需要的是向你的控制器添加一个自定义mime类型,如下所示:

Mime::Type.register_alias "application/zip", :zip

然后

respond_to do |format|
  format.zip { ... }
end

也可在request.format

中找到