Мне кажется, что ваш лучший вариант - вложенная маршрутизация - по крайней мере, для индексных страниц хоста.Если вы хотите, чтобы все ресурсы хоста не размещались под клиентами, вы могли бы вложить только действие index.Например:
resources :clients do
resources :hosts, :only => [:index]
end
resources :hosts, :except => [:index]
Это будет означать, что в вашем HostsController параметр client_id будет присутствовать только в действии index.Все остальные действия будут иметь только параметр id для хоста.Затем вы можете просмотреть все хосты для клиента, используя URL-адрес, подобный следующему:
http://localhost:3000/clients/10/hosts
. И вы увидите информацию об отдельном хосте, как это: