silverstripe / multivaluefield
Requires
- php: ^7.3 || ^8.0
- silverstripe/framework: ^4.10
Requires (Dev)
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3
Replaces
- silverstripe/multivaluefield: 5.2.1
- 5.x-dev
- 5.2.x-dev
- 5.2.1
- 5.2.0
- 5.1.x-dev
- 5.1.1
- 5.1.0
- 5.0.x-dev
- 5.0.2
- 5.0.1
- 5.0.0
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 3.x-dev / 3.2.x-dev
- 3.1.x-dev
- 3.1.2
- 3.1.1
- 3.1.0
- 3.0.x-dev
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.4.x-dev
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.x-dev
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.x-dev
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.x-dev
- 2.1.1
- 2.1.0
- 2.0.x-dev
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.1-rc1
- 2.0.0
- 1.0.x-dev
- dev-master
- dev-fix-mvfield-set-value
- dev-fix-empty-array
This package is not auto-updated.
Last update: 2022-02-01 12:22:30 UTC
README
备注
- 该模块的 SilverStripe 2.4 兼容版本仍可在 ss24 分支中找到
- SilverStripe 3.x 兼容版本仍可在 2.x 分支中找到。(查看版本信息)
一种数据库字段类型,允许在单个数据库字段中存储多个离散值。这也提供了以简单方式输入多个值的表单字段
- MultiValueTextField - 显示一个文本字段。当输入数据时,直接在下方显示另一个文本字段。后续数据输入会触发更多文本字段的显示
- MultiValueDropdownField - 显示一个下拉字段。当选择一个值时,会显示另一个下拉字段。
在模板中,字段可以像数据对象集一样迭代。属性 $Value 以 Varchar 类型提供,并且从 ViewableData 继承了其他典型属性,如 $FirstLast 等。
数据以序列化 PHP 格式存储在数据库中。虽然这不适合搜索目的,但某些外部索引引擎(例如 Solr 模块)知道字段类型并会相应地索引。
版本信息
此版本的 MultiValueField 支持 SilverStripe 4.0.0
在以下次要版本分支上支持 SilverStripe 的较旧版本
安装
composer require symbiote/silverstripe-multivaluefield
基本用法
与所有数据库字段一样
private static $db = array(
'Keywords' => 'MultiValueField',
);
要在前端使用字段,您可以遍历 Items 属性
<% loop $Keywords.Items %> <p>$Key $Value</p> <% end_loop %>
在这种情况下,$Value
是一个 Varchar 对象,因此您可以在其上调用所有相关的字符串字段方法,例如 $Value.Raw
、$Value.LimitWordCount
等。
请注意,要使 $Key
值可用为非整数值,请使用 KeyValueField
字段类型来填充字段。
您可以在字段中这样设置 KeyValueField 的键和值占位符值
$kvf = KeyValueField::create(
'MultiChoiceAnswer',
'Multiple Choice Answers'
);
$kvf->setValueFieldPlaceholder('Value');
$kvf->setKeyFieldPlaceholder('Label');
维护者联系方式
- Marcus Nyeholt [email protected]
要求
- SilverStripe 4.0
贡献
感谢
- Ingo 的初始工作 使此 SS4 准备就绪
- muskie9 的工作 更新 UI 字段
翻译
自然语言字符串的翻译通过第三方翻译接口 transifex.com 进行管理。新添加的字符串将被定期上传到该网站进行翻译,任何新的翻译将被合并回项目源代码。
请使用 https://www.transifex.com/projects/p/silverstripe-multivaluefield 贡献翻译,而不是发送包含 YAML 文件的拉取请求。
许可证
本模块遵循 BSD 许可证,可在 http://silverstripe.org/BSD-license 查看。