如果我想匹配 x.gif
和y.gif
,是否可以将网址传递给map.connect
,其中包含两个文件名的可能性:
map.connect "public/images/:name.gif",
:controller => "static_image_controller",
:action => "serve"
然后在我的param
中收到StaticImageController
作为params[:name]
?
class StaticImageController < ApplicationController
def serve
image_name = params[:name]
image = File.read(File.join(Rails.root, image_name))
send_data image, :type => "image/gif", :disposition => "inline"
end
end
除了我在这里所做的事情违反了Rais中的约定优于配置的原则,这看起来是否合适?
答案 0 :(得分:3)
map.connect '/public/images/:filename', :filename => /\.gif$/
会这样做。