TLDR; Каков наилучший или рекомендуемый способ работы со сложными виртуальными элементами на нескольких уровнях?
В настоящее время я работаю над чем-то, что вместо использования переменных строки запроса для фильтрации свойств, я просто хотел бы расширить URL-адрес и разрешить фильтрацию этих URL-адресов.
События:~/events/2012/april
или~/events/lunches
или
~/events/6CB27D08-358E-49AA-8107-16A50E963C70
В настоящее время у меня есть настройка подстановочного знака для обработки последнего случая или года, но я столкнулся с проблемой подстановочного знака, обрабатывающего только один уровень, поэтому я не могу обработать /events/{0}/{1}
только с одним подстановочным знаком. Кроме того, я считаю, что общий дружественный URL-адрес будет /events/2012/april/<external_id>_<event_name>
Используя подстановочные знаки, мне нужно было бы поместить их в три слоя с тремя разными макетами, чтобы обрабатывать каждый случай из того, что я знаю на данный момент.
Events/
*
*
*
Есть ли лучший способ или более рекомендуемый способ работы со сложными виртуальными элементами на нескольких уровнях?