mvo / contao-group-widget
添加了一个新的分组小部件,允许重复一组DCA字段。
v1.5.8
2024-09-07 08:27 UTC
Requires
- php: >=7.4
- contao/core-bundle: ^4.9 || ^5.0
- doctrine/collections: ^1.4 || ^2.1
- doctrine/dbal: ^2.12 || ^3.0
- doctrine/inflector: ^1.4 || ^2.0
- doctrine/orm: ^2.6
- psr/container: ^1.0 || ^2.0
- symfony/config: ^4.4 || ^5.0 || ^6.0
- symfony/dependency-injection: ^4.4 || ^5.0 || ^6.0
- symfony/http-foundation: ^4.4 || ^5.0 || ^6.0
- symfony/http-kernel: ^4.4 || ^5.0 || ^6.0
- symfony/property-access: ^4.4 || ^5.0 || ^6.0
- twig/twig: ^2.7 || ^3.0
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.4
- contao/manager-plugin: ^2.0
- phpunit/phpunit: ^9.5
- symfony/cache: ^5.4
Conflicts
- contao/manager-plugin: <2.0 || >=3.0
- dev-main
- v1.5.8
- v1.5.7
- v1.5.6
- v1.5.5
- v1.5.4
- v1.5.3
- v1.5.2
- V1.5.1
- v1.5.0
- v1.4.2
- v1.4.1
- v1.4.0
- v1.3.6
- v1.3.5
- v1.3.4
- v1.3.3
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.0
- v1.1.0
- v1.0.1
- v1.0.0
- v1.0.0-RC2
- v1.0.0-RC
- v1.0.0-beta4
- v1.0.0-beta3
- v1.0.0-beta2
- v1.0.0-beta1
- v0.3
- v0.2.1
- v0.2
- v0.1
- dev-hotfix/css-class
- dev-housekeeping
- dev-zero-index
- dev-feature/support-file-dcs
This package is auto-updated.
Last update: 2024-09-07 08:28:54 UTC
README
这个Contao CMS扩展提供了一个输入类型 group
,允许在后台重复一组字段。结果数据可以是序列化的数组或自定义实体关系(ORM)。
设计决策/限制
分组元素小部件仍然是相应DCA的“一等公民”。只有它们的定义会在运行时动态生成。这样我们就不干扰显示的子小部件的渲染和状态。因此,通过加号按钮添加新元素时,将提交当前的DCA表单以添加新元素。
元素的视觉重新排序是通过CSS的order
属性完成的。这样iframes
可以保持活动状态(DOM不会改变),这对于处理tinyMCE
富文本编辑器等组件特别有帮助。
文档
TLDR;
给我一个例子,好吗?
$GLOBALS['TL_DCA']['tl_content']['fields']['my_group'] = [ 'inputType' => 'group', 'palette' => ['amount', 'singleSRC', 'text'], 'fields' => [ 'amount' => [ // additional field, defined inline 'inputType' => 'text', 'eval' => ['tl_class' => 'w50'], ], '&singleSRC' => [ // let's change some properties of the existing field 'eval' => ['mandatory' => false], ] ], // force at least 1, at max 5 elements 'min' => 1, 'max' => 5, // disable ordering (on by default) 'order' => false, // store serialized into a blob (default storage backend) 'sql' => [ 'type' => 'blob', 'length' => \Doctrine\DBAL\Platforms\MySqlPlatform::LENGTH_LIMIT_BLOB, 'notnull' => false, ], ];