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.

Form Questions /

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Populating a form's CheckboxSetField

Go to End

4 Posts   1966 Views


Community Member, 78 Posts

2 September 2010 at 1:51am

Edited: 02/09/2010 1:54am


i have trouble generating a form that should pe prefilled with data.
All fields are fine but the CheckboxSetField.

I have a class "Request" (extended from DataObject ) that has a many_many relation to the class "Artistcategory"

Now i want to show my "RequestForm" and populate the Data coming from a DataObject.

        public function RequestForm()
            $form = new RequestForm($this, 'RequestForm');
            if( $this->_Request instanceof Request ) {
                $form->loadDataFrom ( $this->_Request);
            return $form;

All fields are populated with the correct data of the dataobject.
But not the CheckboxSetField. It's always empty (no Checkbox is ticked).

Any ideas ?

Class Request:

class Request extends DataObject {
    public static $db = array(

    public static $many_many = array(
        'Artistcategories'  => 'Artistcategory'

Class Artistcategory:

class Artistcategory extends DataObject {
    public static $db = array(

    public static $many_many = array(        

    public static $belongs_many_many = array(
        'Requests' => 'Request',


Community Member, 201 Posts

22 March 2011 at 10:46pm

Hi ya,

Did you get any luck with this as I'm stuck here too?




Forum Moderator, 1899 Posts

24 March 2011 at 5:11am

if it helps this is how I create a CheckboxSetField with values and specify the ones currently selected...

$dos = DataObject::get(<DataObjectName>);
$map = $dos ? $map = $dos->toDropdownMap('ID','Name') : array();

$selectedarr = array();
$selectedarr[<ID>] = <ID>; //you would get this list from the relationship componentset with ->getIdList()

$cbf = new CheckboxSetField(<FieldName>,<TabName>, $map,$selectedarr);


Community Member, 201 Posts

24 March 2011 at 8:54am

Thanks for the help swaiba, i'm moving further on but am now stuck on how to save all the data including the checkbox data, i can get the standard data to save but not the many_many data. I had started another post here if you could help?