CachePut пропускает обязательные поля - PullRequest
0 голосов
/ 21 декабря 2018

Я хочу использовать CachePut().В частности, я хочу, чтобы

 CachePut(id = _attr.path, value = attr.qryPath, region = variables.cacheRegion);

id, value и region были 1-м, 2-м и 5-м параметрами соответственно.

Adobe говорит, что с 3-го по последнийпараметры не являются обязательными.Источник: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-c-d/CachePut.html

Как пройти 1-й, 2-й и 5-й?Когда я пытаюсь это сделать, я получаю:

enter image description here

1 Ответ

0 голосов
/ 21 декабря 2018

ИЗ ВЫШЕГО КОММЕНТАРИИ:

CF2016 не делал именованных параметров.Это началось с CF2018.Таким образом, вам придется вынуть имена и передать что-то в 3-й и 4-й позиции.Обычно вы можете просто передать нормальные значения по умолчанию.Я не уверен, что это за тег в CF2016, но документ F2018 doc http://cfdownload.adobe.com/pub/adobe/coldfusion/2018/publicBeta/NamedParametersColdFusion2018.pdf, похоже, указывает, что значения по умолчанию являются пустыми строками.

Попробуйте

CachePut(_attr.path,attr.qryPath,"","",variables.cacheRegion) ;

ПРИМЕР:

https://cffiddle.org/app/file?filepath=a253f587-43fa-482f-b4cd-c7bbb8b45f3d/252b1e4b-d303-4a16-9d80-7c657e6e7770/7c0dc772-099c-4827-8e2f-068b2e32a4d8.cfm

<cfscript>
    attr.Path = "_path" ;
    attr.qryPath = "querypath" ;
    variables.cacheRegion = "newCacheRegion" ;

    CacheRegionNew(variables.cacheRegion);

    //WriteDump(CacheGetProperties(variables.cacheRegion));

    CachePut(attr.Path,attr.qryPath,"","",variables.cacheRegion);

    writeDump(CacheGet(attr.Path,variables.cacheRegion));
</cfscript>
...