Может ли кто-нибудь описать, что это такое?Ограничения в маршрутизации рубиновых рельсов
Это в файле маршрутизации:
match "photo", :constraints => {:subdomain => "admin"}
Я не могу этого понять.
благодаря
Может ли кто-нибудь описать, что это такое?Ограничения в маршрутизации рубиновых рельсов
Это в файле маршрутизации:
match "photo", :constraints => {:subdomain => "admin"}
Я не могу этого понять.
благодаря
Это говорит о том, что photo
маршрут будет распознан и направляется к контроллеру только если запрос содержит поддомен admin
. Например, приложение Rails ответит на запрос http://admin.example.org/photo, но не http://example.org/photo.
Один наши ребята posted this today который описывает, как вы могли бы использовать те же маршруты с различными контекстами (в данном случае, является ли авторизированные пользователь)
Например, если вы создаете простой класс для оценки истина/ложь:
class LoggedInConstraint < Struct.new(:value)
def matches?(request)
request.cookies.key?("user_token") == value
end
end
вы можете использовать оценщик в маршрутах, чтобы определить, какие маршруты применяются:
root :to => "static#home", :constraints => LoggedInConstraint.new(false)
root :to => "users#show", :constraints => LoggedInConstraint.new(true)
Очевидно, что вы можете разработать ограничения для ваших потребностей, но Стив описал пару разных вариантов.
ОК спасибо. но какой контроллер и индекс будет использовать этот маршрут? –
Какой бы вы ни хотели. Например: 'match 'photo' => 'photos # show',: constraints => {: subdomain => 'admin'}' –
, но в маршрутизации, которую я опубликовал, нет контроллера и действия? –