xm / form-bundle
一些辅助工具,使表单的处理(创建、保存、错误等)更简单。
1.1.2
2017-10-24 19:46 UTC
Requires
- php: ^5.6 || ^7.0
- doctrine/orm: ^2.5
- symfony/form: ~3.0
- symfony/framework-bundle: ~3.0
- xm/flash-bundle: ~1.0
Requires (Dev)
- mockery/mockery: ^0.9
- phpunit/phpunit: 5.7.*
- symfony/phpunit-bridge: ^3.0
- symfony/var-dumper: ^3.0
This package is auto-updated.
Last update: 2024-09-15 14:12:35 UTC
README
一些辅助工具,使表单的处理(创建、保存、错误等)更简单。
安装
步骤 1: 下载组件
打开命令行,进入您的项目目录,并执行以下命令以下载此组件的最新稳定版本
$ php composer.phar require xm/form-bundle
此命令需要 Composer。
步骤 2: 启用组件
然后,通过将其添加到项目中的 app/AppKernel.php
文件中注册的组件列表来启用该组件
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new XM\FormBundle\XMFormBundle(), ); // ... } }
步骤 3: 添加服务别名
添加以下内容可以使对服务的调用更短
form_handler: '@xm_form.handler'
用法
获取表单处理器
$formHandler = $this->get('form_handler');
创建表单
$form = $formHandler->getForm(
EntityFormType::class,
$entity,
$request
);
处理表单并保存实体
if ($formHandler->processForm($form, $entity, '[entity name]')) {
// entity valid and saved successfully, redirect
}
以数组的形式检索验证错误/消息
这在通过 JSON 将验证消息传递到 JS 时很有用。
$errors = FormErrors::flatten($form)
这将返回一个格式为的错误数组
array(
0 => array(
'Global Error 1',
),
'field_name' => array(
'Field Error 1',
'Field Error 2',
...
),
...
)