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.

DataObjectManager Module

Discuss the DataObjectManager module, and the related ImageGallery module.

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

Hidden SimpleTreeDropdownField in 2.4 / r395


5 Posts   1082 Views


7 May 2010 at 1:05am Community Member, 8 Posts

I'm having difficulty with the SimpleTreeDropdownField in Silverstripe 2.4 Final and release 395 of DataObjectManager module - it simply doesnt' show.

Any clues?

All other fields show, but not that one.

It doesn't appear at first glance to be the same as the problem with the SimpleHTMLEditorField described here where the class hidden wasn't being unset by the JavaScript [url][/url] as the HTML code isn't even being output to the popup window.

Below is the code for my data object that does this in case it helps:

   class HCPFeature extends DataObject {
      public static $db = array(
         "Title" => "Varchar(255)",
         "Description" => "HTMLText"
      public static $has_one = array(
         "HeroImage" => "HCPFeature_Image",
         "DeepLink" => "SiteTree"
      public function getCMSFields() {
         $fields = new FieldSet();
         $fields->push( new TextField( 'Title', 'Title' ) );
         $fields->push( new SimpleHTMLEditorField( 'Description', 'Description' ) );
         $fields->push( new SimpleTreeDropdownField("DeepLinkID", "Links to page", "SiteTree") );
         $fields->push( new ImageField( 'HeroImage', 'Image' ) );
         return $fields;
   class HCPFeature_Image extends Image {
      function generateHeroLarge($gd) {
         return $gd->paddedResize(468,220);


7 May 2010 at 2:32am 4085 Posts

It almost always happens because you already have that field added to your form. Check the markup and see if there's maybe a hidden input for DeepLinkID. Try changing it to something else and you'll notice it gets added.


18 May 2010 at 12:22am Community Member, 8 Posts

Unfortunately renaming this field did not fix the problem. It simply does not output no matter what it is called.

I've tried removing all other fields on the popup form to see if there was a conflict problem, but still no joy.

Can you help please?


18 May 2010 at 8:58pm Community Member, 8 Posts

Ok I have fixed this problem!

It was caused by having the relationAutoSetting enabled on my page, but no field for the relationship defined on my DataObject, so it was trying to use the "SiteTree" field that I wanted for the SimpleTreeDropdownField for the relationship instead and causing conflict.

Adding a new field for the relationship on my DataObject solved this problem.


19 May 2010 at 1:24am 4085 Posts

Oh, excellent. We definitely need to document this. Good work!