Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Data Model Questions /

Parent Controller-methods aren`t available in Custom Controller?


Reply


10 Posts   2625 Views

Avatar
mtz

Community Member, 17 Posts

18 August 2010 at 12:37am

Thanks for This!
We'll try that out and let you know here about our succsess!

Avatar
joern

Community Member, 28 Posts

25 September 2010 at 11:23pm

hi,
I had the same problem with my custom "Record-Page" (extends Page) and no access to my Methods that are defined in Record_Controller.

I saw this Entry: http://www.silverstripe.org/general-questions/show/262016

so I add the Contoller manually to the DataObject.

function getFilterRecords() {
   $recordSet = DataObject::get("Record", "`SiteTree`.`ParentID` = '".$this->ID."'$additionalFilter");
   
   if (!$recordSet || !$recordSet->exists()) return false;
      
   // add controller
   foreach ($recordSet as $record) {
      $record->controller = ModelAsController::controller_for($record);
   }
      
   return $recordSet;
}

In Template:

<% if FilterRecords %>
<% control FilterRecords %>
<h1>$Title</h1> <!-- access via http://doc.silverstripe.org/built-in-page-controls#titles_and_cms_defined_options -->

<p>$controller.MyControllerMethod</p><!-- access via the record_controller -->

<% end_control %>
<% end_if %>

I hope this could help too.
Jörn