Не может найти шаблон CFML для пользовательского тега
-
26-09-2019 - |
Вопрос
Я не Coldfusion Coder. Профила для друга, который портировал свой CF сайт с сервера Windows в Unix на Godaddy.
Сайт отображает ошибку:
Не удается найти шаблон CFML для пользовательских тегов JSTK. ColdFusion попытался смотреть в дереве установленных пользовательских тегов, но не нашел пользовательский тег с этим именем.
Сайт, на котором я обнаружил, что он имеет в корне / настройках документов с файлом JSTK.CFM и набором файлов в CF_JSTK
Мой гудлинг нашел это:
Вы должны хранить пользовательские страницы метки в любом из следующих действий: тот же каталог, что и вызывая страница; Каталог cfusion customtags; Подкаталог каталога cfusion customtags; Каталог, который вы указываете в администраторе ColdFusion
Так что я:
- Пробовал создание размещения / настроек в / cfusion / customtags
- Пробовал копирование / cfusion / customtags на вышеупомянутый код документа
- Пробовал копировать jstk.cfm и подпапки в тот же каталог, что и вызывающий файл (index.cfm)
Обновление: за поддержку GoDaddy Я также пытался добавить следующее значение: <cfmodule template="CustomTags/jstk.cfm">
Может ли кто-нибудь дать мне несколько советов по этому или мне просто сказать своему парню искать CF Coder?
Спасибо!
Решение
Я не знаю, как Godaddy установлен, так как быстрый тест, пожалуйста, сделайте следующее:
Создать файл test.cfm
В Webroot с содержанием:
<cf_testtag/>
<cfoutput>test</cfoutput><cfabort/>
Создать файл testtag.cfm
В Webroot с содержанием:
<cfdump var=#ThisTag# />
Затем в браузере посетите страницу TEST.CFM.
Вы должны получить два отладочных отвала, а затем «тест»; Это подтвердит, что пользовательские теги в целом работают.
Если это работает, переместите testtag.cfm
в каталог customtags и посмотрите, получаете ли вы такое же поведение или ошибку.
Если это дает ошибку, для CF8 и выше, вы можете добавить <cfset This.CustomTagPaths = "/CustomTags" />
внутри Application.cfc
Файл (при условии, что есть приложение CFC, а не Application.cfm
) Чтобы каталог был проверен для тегов.
Можно преобразовать Application.cfm в Application.cfc - насколько легко это зависит от того, насколько сложный код там - может быть то, что вы могли бы выяснить, или может понадобиться опытный CF Dev, это зависит.
В зависимости от результата этого мы можем попытаться отладить почему jstk
Тег не работает (если один из вышеперечисленных не решает его).
Другие советы
При попытке проверить простые вещи, прежде чем беспокоиться о сложных вещах: помните, что имена файлов на * NIX системах чувствительны к регистру, но на Windows нет.
Например, сервер Windows заберет «Application.cfm», но сервер Linux не будет. Это требует «application.cfm».
Убедитесь, что все имена / пути являются правильным случаем.
Обычно CFML проверяет все пользовательские теги в текущем каталоге сначала, если он не найден, второй находится в CFMX8 / Customtags /.