Silverstripe UserForms - 从 DataObject 填充选项

Silverstripe UserForms - populate options from DataObject

我是 Silverstripe 的新手,

在 CMS 页面上,我可以添加一个下拉表单项,我看到我可以创建选项。但。我想要做的是从一个数组中填充下拉列表。我该怎么做?

数组看起来像这样:

$dropdownFields = array(
  'option1' => array(lots of emails),
  'option2' => array(lots of emails),
  'option3' => array(lots of emails),
  etc
)

我想我想要做的是拥有一个带有 'option' 字段和 'text' 字段的数据对象,其中以 CSV 格式输入电子邮件。

但是我怎样才能让下拉菜单 UserForms 从 DataObject 中检索选项值,而不是作为用户通过 cms 的输入...

您不能单独通过 CMS 和模块实现此目的。您将需要创建自定义 EditableFormField 来实现此目的。

对其进行子类化并在必要时进行更改:https://github.com/silverstripe/silverstripe-userforms/blob/master/code/model/formfields/EditableDropdown.php