Как разбить route.rb на более мелкие файлы

Можно ли разбить файл Rails 3.X routes.rb?

У нас так много ресурсов, что их сложно найти. Я хотел бы разделить маршруты API APP и REST API.

Спасибо!

Ответы

Ответ 1

Вы можете сделать это:

routes.rb

require 'application_routes'
require 'rest_api_routes'

Библиотека/application_routes.rb

YourApplication::Application.routes.draw do
  # Application related routes
end

Библиотека/rest_api_routes.rb

YourApplication::Application.routes.draw do
  # REST API related routes
end

UPDATE: (Этот метод с тех пор был удален из Rails)

Край рельсов только что получил отличное дополнение, несколько файлов маршрутов:

# config/routes.rb
draw :admin

# config/routes/admin.rb
namespace :admin do
  resources :posts
end

Это будет полезно для разбивки сложных файлов маршрута в больших приложениях.

Ответ 2

В Rails3 вы можете установить конфиги в config/application.rb

config.paths.config.routes.concat Dir[Rails.root.join("config/routes/*.rb")]

Ответ 3

Rails 3.2.11

config.paths["config/routes"].concat Dir[Rails.root.join("config/routes/*.rb")]