2016-10-18 4 views
1

Я бы хотел, чтобы определенные маршруты маршрутов были доступны только с локального хоста. Другими словами, если вы попытаетесь получить доступ к этому URL-адресу из не-localhost-соединения, вам будет предоставлен ответ, эквивалентный отсутствующему маршруту.Создание маршрутов маршрутов только для localhost

Оптимальным способом определения маршрутов как локальных в самом маршруте.rb было бы самое чистое решение, но если есть какой-то способ фильтрации запроса позже на уровне контроллера, например, это тоже нормально.

ответ

1

Если вы хотите, чтобы указать, что эти адреса существуют только в среде разработки, вы можете сделать только просто:

if Rails.env.development? 
    #your routes 
end 

Но если ваш сервер в режиме разработки осуществляется доступ с другими, и вы хотите чтобы указать, что эти маршруты существуют для localhost, только тогда вы можете добавить ограничение для домена:

if Rails.env.development? 
    resources :users, constraints: { domain: 'localhost' } 
end 
1

Файл routes.rb содержит специальные DSL для маршрутов, но это еще рубин. Итак, вы пытались поставить свои маршруты в простом состоянии?

# routes.rb 

if Rails.env.development? 
    # your special local routes definition 
end 
+0

Да, это более понятно. Спасибо ypu, я исправлю свой пример кода. – rootatdarkstar

Смежные вопросы