Ссылка на массив запросов в cfloop - PullRequest
1 голос
/ 14 сентября 2011

Я пытаюсь сослаться на запрос из массива и использовать его в теге cfloop, и я получаю сообщение об ошибке

Ошибка:

Выражение запросило переменную или промежуточный результат выражения в виде простого значения. Однако результат не может быть преобразован в простое значение. Простыми значениями являются строки, числа, логические значения и значения даты / времени. Запросы, массивы и COM-объекты являются примерами сложных значений.

Наиболее вероятной причиной ошибки является то, что вы пытались использовать сложное значение как простое. Например, вы пытались использовать переменную запроса в теге cfif.

Код:

<cfquery datasource="datasource" name="valueQuery">SELECT count FROM watermelons</cfquery>
<cfset queryArray = ArrayNew(1)>

<cfscript>
ArrayAppend(queryArray, valueQuery);
</cfscript>

<cfloop query="#queryArray[1]#">
        <!---do stuff--->
</cfloop>

Я тоже пробовал (без килограммов):

<cfloop query="queryArray[1]">
            <!---do stuff--->
</cfloop>

который выдает эту ошибку:

Недопустимое значение атрибута query, который в данный момент является queryArray [1].

1 Ответ

8 голосов
/ 14 сентября 2011
<cfset queryIndex = queryArray[1]>
<cfloop query="queryIndex">
        <!---do stuff--->
</cfloop>

'причина query="" ожидает имя переменной.

...