Ruby on rails 请求格式时Rails 4中缺少模板错误*/*;
我已经看到这些错误很久了,但没有发现问题:Ruby on rails 请求格式时Rails 4中缺少模板错误*/*;,ruby-on-rails,internet-explorer,format,actionview,Ruby On Rails,Internet Explorer,Format,Actionview,我已经看到这些错误很久了,但没有发现问题: ActionView::MissingTemplate:MissingTemplate pages/home,application/home与{:locale=>[:en],:formats=>[“*/*;”]} 用户代理总是MSIE6(这是我先前放弃的部分原因) 要复制:curl-H“Accept://*;”-Ihttp://localhost:5000 有人知道怎么修理吗 编辑 curl-H“接受:*/*”-Ihttp://localhost:5
ActionView::MissingTemplate:MissingTemplate pages/home,application/home与{:locale=>[:en],:formats=>[“*/*;”]}
用户代理总是MSIE6(这是我先前放弃的部分原因)
要复制:curl-H“Accept://*;”-Ihttp://localhost:5000
有人知道怎么修理吗
编辑
curl-H“接受:*/*”-Ihttp://localhost:5000
有效。仅当格式设置为*/*时,它才起作用代码>(注意分号)
更新
我尝试按照注释中的建议修改Mime:ALL
,但无法让它同时接受*/*
和*/*代码>同时。我看到的一个解决方案是,在不存在mime类型或mime类型格式不正确的情况下,通过猴子补丁来处理请求,但我不确定如何处理。提供了线索,但我还是没有
更多更新
我仍然看到这些错误和更多。一个新的是:formats=>[“hc/url;*/*”]
(Firefox)。我很惊讶这没有影响到其他人,我认为我的代码中没有任何特定的东西会导致不寻常的错误。gregkare刚刚发布了一个修复程序
不完全确定是否有副作用,但目前看来效果不错。在路由中设置root。rb
作为root“pages#home”
Rails maps“*/*”=>:all
,我不确定如何强制处理:all as:html请求我的所有路由都正确设置了Rajarshi。事实上,这个问题很微妙<代码>*/*
有效,*/*我想你可以注册一个mime类型mime::type.register“*/*;”,:all
,来解决这个问题。或者可能是Mime::ALL=Mime::Type.new(“/”,:ALL,['/;'])。我想你需要在一个初始值设定中这样做。成功了!重新定义Mime::ALL会抛出一个警告,因此寄存器可能是最好的。你应该把它写在回答里,我会接受的!
DEFAULT_RESPONSE_FORMAT = :html
before_filter :set_default_response_format
def set_default_response_format
request.format = DEFAULT_RESPONSE_FORMAT if request.format.to_sym.nil?
end