Ich habe ein Modell, surveyTemplate
, das alle bis auf eine seiner Eigenschaften von einer Abfrage ausgefüllt hat.Warum kann ich RecordCount auf eine Abfrage verweisen, die in ein Objekt eingebettet ist, aber ich kann nicht darüber hinwegschleifen?
Ich speichere eine zusätzliche Abfrage in der letzten Eigenschaft des Modells, die aufgerufen wird, surveyTemplateQuestions
.
Wenn ich Folgendes tun:
writeDump(var="#surveyTemplateObj#"); abort;
ich das Modell korrekt mit der letzten Eigenschaft enthält die Abfragedaten gefüllt.
Ich kann auch dies tun:
writeDump(var="#surveyTemplateObj.getSurveyTemplateQuestions()#"); abort;
Und jetzt bekomme ich nur die Abfrage in der letzten Eigenschaft des Modells gespeichert.
Also, warum kann ich dies nicht tun:
<cfoutput query="prc.surveyTemplateObj.getSurveyTemplateQuestions()">
Wenn die oben tun ich die folgende Fehlermeldung erhalten:
The value of the attribute query, which is currently prc.surveyTemplateObj.getSurveyTemplateQuestions(), is invalid.
Aber dann kann ich diese stattdessen tun:
<cfloop from="1" to="#prc.surveyTemplateObj.getSurveyTemplateQuestions().RecordCount#" index="i">
Wie kann es sein, dass, wenn ich eine cfdump
der letzten Eigenschaft des Objekts als eine Abfrage zeigt, kann ich eine 012 tunfür das Abfrageobjekt, aber ich kann das Abfrageobjekt über cfoutput
nicht durchlaufen?
Nur um zu klären, wenn Sie [die Dokumentation] sehen (https://helpx.adobe.com/coldfusion/cfml-reference/ coldfusion-tags/tags-mo/cfoutput.html), es sagt, dass es den * name * der Abfrage erwartet, dh string, keine Abfrage * object * oder so etwas wie eine Funktion, die ein Abfrageobjekt zurückgibt. – Leigh