【发布时间】:2016-07-17 19:17:56
【问题描述】:
我在 ModelAdmin 中有一个 Dataobject,其中包含以下字段:
class NavGroup extends DataObject {
private static $db = array(
'GroupType' => 'Enum("Standard,NotStandard","Standard")',
'NumberOfBlocks' => 'Int'
);
public function getCMSFields() {
$groupTypeOptions = singleton('NavGroup')->dbObject('GroupType')->enumValues();
$fields = parent::getCMSFields();
$fields->addFieldToTab('Root.Main', new Dropdownfield('GroupType', 'Group Type', $groupTypeOptions));
$fields->addFieldToTab('Root.Main', new Numericfield('NumberOfBlocks', 'Number of Blocks'));
return $fields;
}
}
如果GroupType == "Standard" 我希望NumberOfBlocks 字段自动隐藏,以便对用户隐藏。这应该是动态发生的。
SilverStripe 中是否提供此功能,还是我需要添加一些自定义 JavaScript?
【问题讨论】:
-
这不是核心功能,但 Unclecheese 制作了一个模块
Display Logic可以为您解决这个问题:github.com/unclecheese/silverstripe-display-logic
标签: php silverstripe