无法在 DropdownField 中设置源
Can't set source in DropdownField
我想在发件人的下拉字段名称中选择
DropdownField::create('Sender','Sender')->setSource(Member::get()->map('ID','FirstName'))->setEmptyString('Select one'),
在 CMS 中,我看到了 FirstName。但是当我在模板中渲染时
<% loop LettersSearchResults %>
......
<td >$Sender</td>
它显示 ID,而不是名字。怎么了?
Member::get()->map('ID','FirstName')
将 ID 设置为键,将 FirstName 设置为标题,这样 ID 将保存在数据库中 - 标题仅用于填充下拉列表。
如果您在要保存到的数据对象上有 has_one 关系,则可以保存发件人 ID 并改为在模板中执行 Sender.FirstName
。
我想在发件人的下拉字段名称中选择
DropdownField::create('Sender','Sender')->setSource(Member::get()->map('ID','FirstName'))->setEmptyString('Select one'),
在 CMS 中,我看到了 FirstName。但是当我在模板中渲染时
<% loop LettersSearchResults %>
......
<td >$Sender</td>
它显示 ID,而不是名字。怎么了?
Member::get()->map('ID','FirstName')
将 ID 设置为键,将 FirstName 设置为标题,这样 ID 将保存在数据库中 - 标题仅用于填充下拉列表。
如果您在要保存到的数据对象上有 has_one 关系,则可以保存发件人 ID 并改为在模板中执行 Sender.FirstName
。