Ho un DataObject in ModelAdmin con i seguenti campi:Come mostrare dinamicamente/nascondere campo in SilverStripe ModelAdmin
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;
}
}
Se GroupType == "Standard"
voglio il campo NumberOfBlocks
per nascondere automaticamente in modo che sia nascosto all'utente. Questo dovrebbe accadere in modo dinamico.
Questa funzionalità è disponibile in SilverStripe o devo aggiungere un codice JavaScript personalizzato?
Questa non è una funzione principale, ma Unclecheese ha creato un modulo 'Display Logic' che risolverà questo per voi: https://github.com/unclecheese/silverstripe-display-logic – colymba