2017-01-17 19 views
2

У меня есть модель, surveyTemplate, у которой есть все, кроме одного из ее свойств, заполненных запросом.Почему я могу ссылаться на RecordCount на запрос, встроенный в объект, но я не могу его перебрать?

Я сохраняю дополнительный запрос в последнем свойстве модели, которая вызывается, surveyTemplateQuestions.

Если я сделать следующее:

writeDump(var="#surveyTemplateObj#"); abort; 

я модель правильно заселен с последним свойством, содержащим данные запроса.

Я также могу это сделать:

writeDump(var="#surveyTemplateObj.getSurveyTemplateQuestions()#"); abort; 

И теперь я получаю только запрос, хранящийся в последнем свойстве модели.

Итак, почему я не могу это сделать:

<cfoutput query="prc.surveyTemplateObj.getSurveyTemplateQuestions()"> 

При выполнении выше я получаю следующее сообщение об ошибке:

The value of the attribute query, which is currently prc.surveyTemplateObj.getSurveyTemplateQuestions(), is invalid.

Но тогда я могу сделать это вместо того, чтобы:

<cfloop from="1" to="#prc.surveyTemplateObj.getSurveyTemplateQuestions().RecordCount#" index="i"> 

Как это может быть, когда я делаю cfdump последнего свойства объекта, которое он показывает как запрос, я могу сделать RecordCount на объекте запроса, но я не могу перебрать объект запроса через cfoutput?

+0

Просто чтобы прояснить, если вы посмотрите на [Документов] (https://helpx.adobe.com/coldfusion/cfml-reference/ coldfusion-tags/tags-mo/cfoutput.html), он говорит, что ожидает * имя * запроса, то есть строку, а не объект запроса * или что-то вроде функции, возвращающей объект запроса. – Leigh

ответ

3

Это:

prc.surveyTemplateObj.getSurveyTemplateQuestions() 

является результатом функции. Если вы хотите, чтобы петли через него, присвоить его переменной первой:

myVariable = prc.surveyTemplateObj.getSurveyTemplateQuestions(); 

<cfoutput query = "myVariable"> 
etc 
+0

Привет, Дэн, спасибо за ответ. Я считаю, что я это пробовал, но сейчас я проверю дважды. –

+0

Ну, я стою исправлено. Я, должно быть, добрался раньше, ты, конечно, прав. Благодаря! –