Ruby on rails 试图简化路线的某些部分

Ruby on rails 试图简化路线的某些部分,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想以某种方式简化这一点: namespace :api do namespace :v1 do get ":domain/test1" => "home#test1", constraints: { domain: /[0-z\.]+/ }, defaults: { format: :json } get ":domain/test2" => "home#test2", constraints: { domain: /[0-z\.]+/ }, d

我想以某种方式简化这一点:

  namespace :api do
    namespace :v1 do
      get ":domain/test1" => "home#test1", constraints: { domain: /[0-z\.]+/ }, defaults: { format: :json }
      get ":domain/test2" => "home#test2", constraints: { domain: /[0-z\.]+/ }, defaults: { format: :json }
      get ":domain/test3" => "home#test3", constraints: { domain: /[0-z\.]+/ }, defaults: { format: :json }
      # ........... and so on
    end
  end

有什么办法吗?

也许这能帮到你

对于您的问题,您必须使用:


get'/stories/:name',to:redirect('/posts/%{name}')
也许您想在路由中使用某种
方法

#config/routes.rb
def record id
   get ":domain/#{id}" => "home#test#{id}", constraints: { domain: /[0-z\.]+/ }, defaults: { format: :json }
end

namespace :api do
    namespace :v1 do
       x = 10
       x.times do |i|
           record i
       end
    end
end
当然,记忆方面非常臃肿


杀手是
:域
约束。我已经准备好创建一个
resources:home
调用,其中包含一些自定义方法-但是每次引用所需路线时,您都必须手动定义约束

可能重复:您试图简化哪些方面?重复的约束/默认值?