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.

Widgets

Discuss SilverStripe Widgets.

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

Linking Dataobjects in Widget


Reply

687 Views

Avatar
Azlein

17 February 2013 at 3:08am Community Member, 5 Posts

Hi,

I'm trying to link some DataObjects to a Widget. In my particular case, I have

   static $has_many = array(
      'Buttons' => 'SocialButton'
   );

in my Widget and

   static $has_one = array(
      'Icon'=>'Image',
      'Widget'=>'SocialMediaWidget'
   );

in my DatabObject.

I'm trying to do this with a GridField, but this fails:

$fields = parent::getCMSFields();
      $gridField = GridField::create('Buttons', 'Some text', $this->Buttons(), new GridFieldConfig_RelationEditor());//new GridField("Buttons", "Buttons", $this->Buttons(), $gridFieldConfig);
      $fields->push($gridField); //This line causes a Internal Server Error

So, my question is - is it allowed to use a GridField in a Widget? If yes, why is the $fields->push call creating the error? If not, are there any alternatives?

Thanks in advance.