SS3: the method 'fortemplate' does not exist on 'ArrayList'
Posted
by
Fraser
on Stack Overflow
See other posts from Stack Overflow
or by Fraser
Published on 2012-10-14T21:33:27Z
Indexed on
2012/10/14
21:36 UTC
Read the original article
Hit count: 280
silverstripe
In Silverstripe 3, I'm trying to run some custom SQL and return the result for handling in my template:
function getListings(){
$sqlQuery = new SQLQuery();
$sqlQuery->setFrom('ListingCategory_Listings');
$sqlQuery->selectField('*');
$sqlQuery->addLeftJoin('Listing', '"ListingCategory_Listings"."ListingID" = "Listing"."ID"');
$sqlQuery->addLeftJoin('SiteTree_Live', '"Listing"."ID" = "SiteTree_Live"."ID"');
$sqlQuery->addLeftJoin('ListingCategory', '"ListingCategory_Listings"."ListingCategoryID" = "ListingCategory"."ID"');
$sqlQuery->addLeftJoin('File', '"ListingCategory"."IconID" = "File"."ID"');
$result = $sqlQuery->execute();
//return $result;
//$dataObject = new DataList();
$dataObject = new ArrayList();
foreach($result as $row) {
$dataObject->push(new ArrayData($row));
}
return $dataObject;
}
However, this is giving me the error:
Uncaught Exception: Object->__call(): the method 'fortemplate' does not exist on 'ArrayList'
What am I doing wrong here and how can I get the result of this query into my template?
© Stack Overflow or respective owner