novactive/formbuilder

用于创建动态symfony表单的组件

安装: 7,614

依赖项: 0

建议者: 0

安全性: 0

星级: 1

关注者: 22

分支: 5

开放问题: 3

类型:ezplatform-bundle

v1.7.5 2023-11-21 15:36 UTC

README

用于创建动态symfony表单的组件。

此组件旨在提供帮助在symfony应用中生成动态表单的库。

它提供了2个组件

  • bundle symfony组件
  • ezbundle 用于在eZ Platform中使用bundle的桥梁

注意,eZ Platform是一个纯symfony应用,因此桥梁只是关于连接用户界面



安装

要求

  • eZ Platform 2+
  • PHP 7.1+
  • MySQL 5.7.8+ / Maria DB 10.1+

安装步骤

运行 composer require novactive/formbuilder 安装组件及其依赖项

注册组件

app\AppKernel.php 文件中激活组件。

// app\AppKernel.php

public function registerBundles()
{
   ...
   $bundles = array(
        new FrameworkBundle(),
        ...
        // FormBuilder bundles
        new Novactive\Bundle\FormBuilderBundle\FormBuilderBundle(),
        new Novactive\Bundle\eZFormBuilderBundle\NovaeZFormBuilderBundle()
   );
   ...
}

添加路由

_novaezformbuilder_routes:
    resource: '@NovaeZFormBuilderBundle/Resources/config/routing.yml'

安装数据库模式

bin/console novaformbuilder:install

故障排除

如果组件的Web资源(CSS、JS等)在public目录中缺失,可以通过运行以下命令修复

bin/console assets:install --symlink --relative
bin/console assetic:dump

这将安装组件的Web资源到public目录下并将它们写入文件系统。

此外,如果一次性没有加载翻译,清除Symfony缓存文件夹可能有助于。



从Ez Survey迁移数据库

旧版Ez Survey Bundle的数据库可以迁移到这个Novactive Form Builder Bundle。为此,请在ezplatform文件夹内运行以下命令

php bin/console novaformbuilder:migrate --export
php bin/console novaformbuilder:migrate --import

第一个命令将旧数据库的数据导出到json文件中。第二个命令将从json文件中将数据导入到新数据库中。之后,转储的数据仍然在web/var/site/storage/files/forms文件夹中的json文件内。如果不再需要,可以手动删除。

迁移脚本所做的:它将所有调查转换为表单。每个都与特定的Ez内容相关联。如果有多个记录具有相同的content_id,则脚本将根据ID值选择最新的一条。然后,它将所有问题转换为字段并将结果 + 问题结果转换为提交。

还有一个选项可以截断数据库中的当前Novactive Form Builder Bundle

php bin/console novaformbuilder:migrate --clean

在运行迁移脚本后,如果项目使用了Redis缓存,可能需要清除Redis缓存以应用对数据库所做的更改。

迁移不支持任何特定内容类型中有多个ezsurvey字段的情况。

为了在前端应用自定义表单设计,应该使用Ez Platform内的另一个模板覆盖bundle模板 fields/ezcustomform_show_front.html.twig



贡献

贡献

更改和许可

许可

由novactive用爱创造。