gpt4 book ai didi

ruby-on-rails - 如何在Ruby on Rails中创建一个包罗万象的路线?

转载 作者:行者123 更新时间:2023-12-04 03:08:06 30 4
gpt4 key购买 nike

我想让所有满足特定约束的请求都转到特定的 Controller 。所以我需要一条通吃的路线。如何在Rails中指定呢?是这样吗

match '*', to: 'subdomain_controller#show', constraints: {subdomain: /.+\.users/}

那真的会捕获所有可能的路线吗?重要的是,即使有许多嵌套目录,也不要漏过。

使用Ruby on Rails 3.2,但准备升级到4.0。

UPDATE : '*path'似乎有效。但是,我遇到的问题是,只要文件存在于 public目录中,Rails就会进行渲染。

最佳答案

我认为您需要对此方法进行一些细微调整,但是您明白了这一点:

更新:

#RAILS 3
#make this your last route.
match '*unmatched_route', :to => 'application#raise_not_found!'

#RAILS 4, needs a different syntax in the routes.rb. It does not accept Match anymore.
#make this your last route.
get '*unmatched_route', :to => 'application#raise_not_found!'


class ApplicationController < ActionController::Base

...
#called by last route matching unmatched routes.
#Raises RoutingError which will be rescued from in the same way as other exceptions.
def raise_not_found!
raise ActionController::RoutingError.new("No route matches #{params[:unmatched_route]}")
end
...

end

更多信息在这里: https://gist.github.com/Sujimichi/2349565

关于ruby-on-rails - 如何在Ruby on Rails中创建一个包罗万象的路线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19368799/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com