javihgil / utils-bundle
该包已废弃,不再维护。作者建议使用javihgil/extra-bundle包。
v1.0.1
2015-09-27 14:35 UTC
Requires
- doctrine/orm: ~2.2,>=2.2.3
- symfony/config: ~2.3
- symfony/dependency-injection: ~2.3
- symfony/form: ~2.3
- symfony/http-foundation: ~2.3
- symfony/http-kernel: ~2.3
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: 4.2.*
This package is auto-updated.
Last update: 2019-02-20 19:42:20 UTC
README
Symfony项目的实用类
安装
composer require 'javihgil/utils-bundle'
配置Bundle
在app/AppKernel.php中注册Bundle
// app/AppKernel.php
public function registerBundles()
{
return [
// ...
new \Jhg\UtilsBundle\UtilsBundle(),
];
}
创建表单处理器
CRUD控制器中创建 doctrine 实体的处理器。
示例
/**
* @param Request $request
*
* @return Response
*/
public function createAction(Request $request)
{
$element = new Element();
$form = $this->createForm(new ElementType(), $element);
if ($this->get('create_form_handler')->process($form, $request)) {
return $this->redirectToRoute('success_route', ['element', $element->getId()]);
}
$viewData = [
'form' => $form->createView(),
];
return $this->render('ExampleBundle:Element:create.html.twig', $viewData);
}
更新表单处理器
CRUD控制器中更新 doctrine 实体的处理器。
示例
/**
* @param Element $element
* @param Request $request
*
* @return Response
*/
public function updateAction(Element $element, Request $request)
{
$form = $this->createForm(new ElementType(), $element);
if ($this->get('update_form_handler')->process($form, $request)) {
return $this->redirectToRoute('success_route', ['element', $element->getId()]);
}
$viewData = [
'element' => $element,
'form' => $form->createView(),
];
return $this->render('ExampleBundle:Element:update.html.twig', $viewData);
}
删除表单处理器
CRUD控制器中删除 doctrine 实体的处理器。
示例
/**
* @param Element $element
* @param Request $request
*
* @return Response
*/
public function deleteAction(Element $element, Request $request)
{
$form = $this->createForm(new ElementType(), $element);
if ($this->get('delete_form_handler')->process($form, $request)) {
return $this->redirectToRoute('success_route');
}
$viewData = [
'element' => $element,
'form' => $form->createView(),
];
return $this->render('ExampleBundle:Element:delete.html.twig', $viewData);
}