Ok, I have instantiated an object and all is fine. I am able to call various methods of that object easily, such as myobject.getId(), myObject.getName() , etc etc. These examples all return either a string or numeric value.
Now I have another method that returns a query. I’ve cfdumped what is returned by the method and it is indeed a query that’s being returned.
By when I try to cfloop through the query I get an error.
Here’s the cfloop code:
<cfloop query="myObject.myFunction()">
<p><cfoutput>#myObject.myFunction().title#</cfoutput></p>
</cfloop>
The error I get references the very first line and says:
invalid variable declaration [myObject.myFunction()]
Any thoughts? Thanks in advance!
OK, so you just need to change your code slightly so you are doing call to run the query first, e.g.
And then you can loop over it.
The reason is that the
<cfloop/>tag expects a query object, not a reference to a function.You could try to see if
<cfloop query="#myObject.myFunction()#">works (with the #’s) but I’m not sure if it will. Besides, each call inside the loop i.e.#myObject.myFunction().titleis going to re-run the query. Not good obviously!Hope that helps!