我有一个带有几个不同子域的应用程序,每个子域都有自己的路由和路由逻辑。
路由逻辑的某些部分在每个子域中是相同的,但是,为了保持DRY,我将该逻辑移动到这样的循环中:
['sub1', 'sub2', 'sub3', ''].each do |sub_domain|
constraints :subdomain => sub_domain do
[ROUTES LOGIC]
end
end
这很好用,但我想知道是否有更好的方法来解决它。是否有可能只是将[ROUTES LOGIC]移动到局部,然后在我想要的地方调用,而不是循环?或者甚至是更好的处理方法?