Использование подстановочного маршрута в FW/1
Я пытаюсь использовать подстановочный знак на маршрутах в FW / 1 v 3.5.
Application.cfc
component extends="framework.one" {
this.name= "Wildcard7";
variables.framework = {
home = 'main.home',
action = 'fuseaction',
baseURL = 'useCgiScriptName',
trace = isDebugMode()
};
variables.framework.routes = [
{ "main/home" = "main/home"},
{ "*" = "main/404"}
];
}
Когда я запускаю страницу, не указывая действия, я получаю страницу main/404 вместо main / home
** FW / 1 трасса **
Как я могу заставить main/404 работать только на недопустимых страницах?
1 ответ
Когда я запускаю страницу, не указывая действия, я получаю страницу main/404 вместо main/home
Я предполагаю, что вы пытаетесь получить доступ к странице следующим образом - your.domain/index.cfm/main
, Обратите внимание на отсутствие home
действие.
Исходя из ваших маршрутов, ваш первый маршрут говорит, что если указанный путь равен "main/home", то укажите на представление main/home
, Если есть действие home
в main.cfc
контроллер затем будет запущен до рендеринга представления.
Оставляя действие, home
, не будет соответствовать ни одному из ваших текущих маршрутов; в результате ваш подстановочный знак ловит его. Вы должны будете справиться с этим, включив другой маршрут, как {"main" = "main"}
,
ОБНОВИТЬ:
Чтобы получить доступ main/home
от your.domain/index.cfm
, вы можете попробовать пройти маршрут {"/" = "main/home"}
, Я бы посоветовал, чтобы это было выше вашего группового символа и ниже любых других маршрутов, чтобы избежать любых странных матчей.