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.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

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

CheckboxSetField to show dataobjects on a page in ss 3.0



tee 1977

Community Member, 6 Posts

22 August 2013 at 3:21am

On a previous site using silverstripe 2.4 i followed a tutorial to allow team profiles to be administered in the model admin which then allowed me to go into the admin and select the profiles per page via a checkbox: [url][/url]

Because dataobject manager is deprecated i cant seem to replicate this in SS3.0. I can get the dataobjects to view in Model Admin but cant get the admin page to view on the relevent page to show all the profiles with checkboxes.

The code i have so far is:

class TeamProfile extends Page {

   public static $db = array(

   public static $has_one = array(
   public static $many_many = array(

       'TheTeams' => 'TheTeam'
   static $has_many = array(
   function getCMSFields() {
      $fields = parent::getCMSFields();
      $fields->removeFieldFromTab("Root.Main", 'Content');
      /*$fields->addFieldToTab('Root.Content.Banner', new ImageField('BannerImage','Banner Image'));*/
       $gridFieldConfig = GridFieldConfig::create()->addComponents(
new GridFieldToolbarHeader(),
new GridFieldAddNewButton('toolbar-header-right'),
new GridFieldSortableHeader(),
new GridFieldDataColumns(),
new GridFieldPaginator(10),
new GridFieldEditButton(),
new GridFieldDeleteAction(),
new GridFieldDetailForm()

      $config = GridFieldConfig_RelationEditor::create();
      $config->addComponent(new GridFieldSortableRows('SortOrder'));
$config->addComponent(new GridFieldBulkEditingTools());
$config->addComponent(new GridFieldBulkImageUpload());
   $theteams= DataObject::get('TheTeam');

if (!empty($theteams)) {

// create an array('ID'=>'Name')
$map = $theteams->toDropdownMap('ID', 'SpecialistName');

// create a Checkbox group based on the array
new CheckboxSetField(
$boxname = "TheTeams",
$title = "Select Team Members",
$source = $map


          return $fields;


class TeamProfile_Controller extends Page_Controller {

Please help, Im hoping its just a case of amending the dataobject code at the bottom