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

ManyManyComplexTableField into a DataObject


4 Posts   1774 Views


18 November 2009 at 8:27am Community Member, 114 Posts

I've gotten some strange behavior trying to put a ManyManyComplexTableField into a DataObject. When I put in the following code and try to create a new entry I just get a blank box and my PHP logs say "Call to a member function MyUnits() on a non-object in /Applications/MAMP/htdocs/ss_clean/sapphire/forms/HasManyComplexTableField.php" - but when I try to edit an existing record I get the table I want but nothing gets saved when I updated even though it says it went through.

class Person extends DataObject {

static $db = array(
'FirstName' => 'Text',
'LastName' => 'Text',
'Role' => 'Text',
'Email' => 'Text'

static $has_one = array(
'HeadShot' => 'Image',

static $many_many = array (
'MyUnits' => 'Unit'

function getCMSFields_forPopup() {
$fields = new FieldSet();

$fields->push( new TextField( 'FirstName', 'First Name' ) );
$fields->push( new TextField( 'LastName', 'Last Name' ) );
$fields->push( new TextField( 'Email' ) );

$fields->push(new DropdownField('Role', 'Role', array(
'Alumni' => 'Alumni',
'Faculty' => 'Faculty',
'Staff' => 'Staff',
'Student' =>'Student'
)), 'Content'

$fields->push(new ImageField('HeadShot'));

$fields->push(new ManyManyComplexTableField(
array('Name' => 'Unit Name')

return $fields;


so when I take out the "push->(new ManyMany..." I can create a new record, but when I put it back in it only shows on edit - but nothing gets saved. I'm not sure if I'm explaining this clearly as I'm honestly confused...


18 November 2009 at 9:01am Community Member, 114 Posts

I just added a record to my table manually and when I edit the 'person' record it comes up as checked in my manymnaycomplextablefield - but still nothing on saving an update. so I think the problem can be narrowed down to getting updates commited and creating new records.


27 March 2010 at 5:17am (Last edited: 27 March 2010 5:18am), Community Member, 19 Posts

Did you find a solution for that? I've got a similar issue. Nothing is saved, checked or updated. I'm on SS 2.3.6!


27 March 2010 at 5:31am Community Member, 114 Posts

oh man, that was a while ago. I think I just ended up figuring out a work-around.

sorry I can't be of more help!