onlinq/form-collection-bundle

Symfony 扩展包,用于使用 Onlinq Form Collection 网页组件构建表单

安装次数: 6,754

依赖项: 0

建议者: 0

安全: 0

星标: 3

关注者: 2

分支: 0

开放问题: 0

语言:Twig

类型:symfony-bundle

0.2.1 2022-11-17 12:53 UTC

This package is auto-updated.

Last update: 2024-09-20 19:04:35 UTC


README

Symfony 扩展包,用于使用 Onlinq Form Collection 网页组件构建表单。

它允许通过 JavaScript 和可自定义的按钮操作 表单集合

安装

Onlinq Form Collection 扩展包需要 PHP 7.2+ 和 Symfony 4.4+。

使用 Composer 和 Symfony Flex 安装此扩展包

composer require onlinq/form-collection-bundle

在表单中启用 Onlinq Form Collection 网页组件的最简单方法是向项目的 Twig 配置中添加一个内置的表单主题

# config/packages/twig.yaml

twig:
    form_themes:
        - '@OnlinqFormCollection/collection_theme.html.twig'

确保通过一个 JavaScript 打包器 或在页面底部包含它来向包含表单的页面添加 Onlinq Form Collection 脚本

<script src="{{ asset('bundles/onlinqformcollection/onlinq-collection.js') }}"></script>

继续阅读以立即开始使用此扩展包或访问 文档

使用方法

当加载了兼容的表单主题时,将启用 Onlinq Form Collection 网页组件。配置生成的表单集合的最简单方法是使用内置的表单类型,该类型可以作为 Symfony CollectionType 类的即插即用替代品

// ...
use Onlinq\FormCollectionBundle\Form\OnlinqCollectionType;

class TaskType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            // ...
            ->add('tags', OnlinqCollectionType::class, [
                'entry_type' => TagType::class,
                'entry_options' => ['label' => false],
                'allow_add' => true,
                'allow_delete' => true,
                'allow_move' => true,
            ])
            // ...
        ;
    }

    // ...
}

内置表单主题

该扩展包包括多个内置表单主题,无需创建自己的样式即可使集合看起来很棒

  • @OnlinqFormCollection/collection_theme.html.twig
  • @OnlinqFormCollection/bootstrap_4_collection_theme.html.twig
  • @OnlinqFormCollection/bootstrap_5_collection_theme.html.twig

文档 中了解更多关于内置表单主题的信息。

使用 JavaScript 打包器

当使用 Webpack 等打包器时,可以通过编译后的 JavaScript 打包器包含 Onlinq Form Collection 网页组件。

安装 Onlinq Form Collection 网页组件包

npm install @onlinq/form-collection

在项目的 JavaScript 资产中导入此包

// assets/js/app.js

import '@onlinq/form-collection';