Позвольте мне вкратце объяснить, как я хотел бы, чтобы маршруты работали, а затем покажу вам код, с которым я работаю. Я хотел бы следующее случилось:Контейнеры маршрутизации Rails с вложенным маршрутом
hearing-providers/any-text-but-a-state-abbreviation -> dispensers controller
hearing-providers/TX -> regions#show
hearing-providers/TX/dallas -> cities#show
Вот код, который я пытаюсь:
resources "hearing-providers", controller: 'dispensers', as: 'dispensers' do
constraints(region_id: /A[KLRZ]|C[AOT]|D[CE]|FL|GA|HI|I[ADLN]|K[SY]|LA|M[ADEINOST]|N[CDEHJMVY]|O[HKR]|P[AR]|RI|S[CD]|T[NX]|UT|V[AIT]|W[AIVY]/) do
collection do
get ':state_abbreviation' => 'regions#show', :as => :region
get ':state_abbreviation/:city_name' => 'cities#show', :as => :city
end
end
end
Проблема заключается в следующем:
Это не имеет значения, какой путь , Я всегда направляюсь к контроллеру регионов. Настройка ограничений не работает.
Вы устали от использования 'state_abbreviation' внутри вашего ограничения вместо' region_id'? – BroiSatse
А, да, это работает, СПАСИБО! Хотите опубликовать его как ответ? – Abram