我想知道是否有任何方法可以更改基于域名相同rails应用的视图格式。
例如:
感谢大家的帮助
答案 0 :(得分:5)
是的,在您的控制器中使用before_filter,并根据response.format
的值设置request.host
。
class Controller < ActionController::Base
before_filter :adapt_response_format
protected
def adapt_response_format
response.format = case request.host
when "xml.foo.com" then :xml
else :html
end
end
答案 1 :(得分:0)
这是我猜测你的问题的另一种方法。
为什么不让客户根据他们想要的格式将Accept标头设置为application / xml或application / json?您可以默认提供html以支持Web浏览器。
这样您就不需要拥有两个不同的主机。