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.

General Questions

General questions about getting started with SilverStripe that don't fit in any of the categories above.

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

String value instead of index from the Dropdownfield


2 Posts   392 Views


7 August 2012 at 8:31pm Community Member, 5 Posts


I have a form which contains a dropdownfield in the following format: new DropdownField('Reproducibility', 'Reproducibility', array('Always','Sometimes','Randomly','Have not tried'))

When I'm trying to get the string values, it's giving array index instead of string values. How can I retrieve the real values which are shown in the dropdownfield?



7 August 2012 at 11:43pm (Last edited: 7 August 2012 11:43pm), Community Member, 46 Posts

The value of the dropdown field is determined by the key in the array you are passing. Since you do not set the keys, they are numeric. Try something like

new DropdownField('Reproducibility', 'Reproducibility',
array('always' => 'Always', 'sometimes'=>'Sometimes', 'randomly'=>'Randomly', 'nottried' => 'Have not tried'));

Avoid spaces in the keys.