регенерирующий URL в cf9 / Coldbox - PullRequest
0 голосов
/ 04 июня 2010

Привет. Мне интересно, есть ли способ восстановить URL, когда какая-либо страница загружается в coldbox / CF9 при использовании event.buildLink?

В настоящее время я получаю http://cawksd05.codandev.local:8080/entries/editor при использовании event.buildlink.

Но к правильному URL должен быть добавлен /index.cfm, как показано ниже:

/ index.cfm / записи / редактор

Есть ли способ установить это один раз и где это установить, потому что я запутался, где установить это для всех моих страниц, чтобы /index.cfm добавлял префикс url, когда я делаю event.Buildlink.

Спасибо Фахим

// Общие свойства setUniqueURLS (ложный); setAutoReload (ложь);

// Базовый URL if (len (getSetting ('AppMapping')) lte 1) { setBaseURL ( " Http: //#cgi.HTTP_HOST#/index.cfm"); } еще { setBaseURL ( " Http: //#cgi.HTTP_HOST#/#getSetting ( 'AppMapping') # / index.cfm"); } * * Тысяча двадцать-один

// Маршруты вашего приложения formatConstraints = {format = "(xml | json)"};

addRoute (рисунок = "/ API /: Формат / задачи / Completed" обработчик =, действие = "Список" "tasksAPI", ограничение = formatConstraints, завершенный = истина); addRoute (шаблон = "/ API /: формат / задачи", обработчик =, действие = "список" "tasksAPI", ограничение = formatConstraints); addRoute (рисунок = "/ API /: формат?", обработчик = "tasksAPI", действие = "недопустимый");

addRoute (шаблон = "/ задачи / список /: статус?", Обработчик = "задача", действие = "Индекс"); addRoute (шаблон = ": Обработчик /: действие?");

Ответы [ 2 ]

4 голосов
/ 05 июня 2010

Нет, setnextevent - ЕДИНСТВЕННЫЙ метод в 3.0, который следует использовать, остальные setnextRoute и relocate () теперь устарели.

Если вы внесли изменения в Route.cfm, убедитесь, что вы повторно инициализировали приложение, чтобы изменения вступили в силу.

index.cfm? Fwreinit = 1

Обычно они забывают переустановить приложение, если были внесены изменения.

1 голос
/ 04 июня 2010

Похоже, вам нужно установить baseURL в файле /config/Routes.cfm

// Base URL
if( len(getSetting('AppMapping') ) lte 1){
    setBaseURL("http://#cgi.HTTP_HOST#/index.cfm");
}
else{
    setBaseURL("http://#cgi.HTTP_HOST#/#getSetting('AppMapping')#/index.cfm");
}

против

// Base URL
if( len(getSetting('AppMapping') ) lte 1){
    setBaseURL("http://#cgi.HTTP_HOST#/");
}
else{
    setBaseURL("http://#cgi.HTTP_HOST#/#getSetting('AppMapping')#/");
}
...