我将 TreeDropdownField 用于 SiteTree 下拉列表,尽管这是一个可选字段,并且希望能够清除/删除此值。我将如何使用 Silverstripe 做到这一点?
<?php
class StaticSidebar extends Page {
static $db = array(
'ExternalLink' => 'Text',
'ExternalText' => 'Varchar',
'ImageLink' => 'Text'
);
static $has_one= array(
"Image" => "Image",
"InternalLink" => "SiteTree"
);
static $allowed_children = array("none");
public function getCMSFields()
{
$fields = parent::getCMSFields();
$fields->addFieldToTab("Root.Content.Main", new TextField("ExternalText", "External Text"), "Content");
$fields->addFieldToTab("Root.Content.Main", new TextField("ExternalLink", "External Link"), "Content");
$fields->addFieldToTab("Root.Content.Main", new TreeDropdownField("InternalLinkID", "Internal Link", "SiteTree"), "Content");
$fields->addFieldToTab("Root.Content.Main", new ImageField("Image"), "Content");
$fields->addFieldToTab("Root.Content.Main", new TextField("ImageLink", "Image Link"), "Content");
return $fields;
}
}
class StaticSidebar_Controller extends Page_Controller
{
}