如何在silex中使实体字段类型可用?

ooXei1sh

我一直在将Silex用于我的最新项目,并尝试遵循Symfony食谱中“如何使用表单事件动态修改表单”我接触到使用实体字段类型的部分,并意识到它在Silex中不可用。

看起来symfony / doctrine-bridge可以添加到包含“ EntityType”的composer.json中。有没有人成功让实体类型在Silex中工作或遇到此问题并找到了解决方法?

我在想像这样的事情可能会起作用:

    $builder
        ->add('myentity', new EntityType($objectManager, $queryBuilder, 'Path\To\Entity'), array(
    ))
    ;

我还找到了这个答案,看起来它可以通过扩展form.factory来解决问题,但尚未尝试。

费洛兹

我使用要点在Silex中添加EntityType字段。

但是窍门是DoctrineOrmExtension通过form.extensionsFormServiceProvider doc所说的那样扩展来注册表单扩展名

DoctrineOrmExtensionManagerRegistry在其构造函数中需要一个接口,该接口可以实现Doctrine\Common\Persistence\AbstractManagerRegistry为以下扩展

<?php
namespace MyNamespace\Form\Extensions\Doctrine\Bridge;

use Doctrine\Common\Persistence\AbstractManagerRegistry;
use Silex\Application;

/**
 * References Doctrine connections and entity/document managers.
 *
 * @author Саша Стаменковић <[email protected]>
 */
class ManagerRegistry extends AbstractManagerRegistry
{

    /**
     * @var Application
     */
    protected $container;

    protected function getService($name)
    {
        return $this->container[$name];

    }

    protected function resetService($name)
    {
        unset($this->container[$name]);

    }

    public function getAliasNamespace($alias)
    {
        throw new \BadMethodCallException('Namespace aliases not supported.');

    }

    public function setContainer(Application $container)
    {
        $this->container = $container['orm.ems'];

    }

}

因此,要注册表单扩展名,我使用:

// Doctrine Brigde for form extension
$app['form.extensions'] = $app->share($app->extend('form.extensions', function ($extensions) use ($app) {
    $manager = new MyNamespace\Form\Extensions\Doctrine\Bridge\ManagerRegistry(
        null, array(), array('default'), null, null, '\Doctrine\ORM\Proxy\Proxy'
    );
    $manager->setContainer($app);
    $extensions[] = new Symfony\Bridge\Doctrine\Form\DoctrineOrmExtension($manager);

    return $extensions;
}));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在silex中使实体字段类型可用?

来自分类Dev

如何在 Drupal 8 实体中创建隐藏类型字段

来自分类Dev

如何在Silex中使用Ajax查询?

来自分类Dev

如何在 Silex (Symfony) 中使用会话

来自分类Dev

如何在TypeORM中使用TIME类型创建实体列

来自分类Dev

如何在Sitecore模板字段中使用Droplist类型

来自分类Dev

如何在mysql中使用动态字段类型?

来自分类Dev

如何在ElasticSearch中使用脚本更新数组类型的字段?

来自分类Dev

如何在Silex的自定义类中使用$ app?

来自分类Dev

如何在UML中为不同类型的字段和实体连接建模

来自分类Dev

如何在带有实体类型字段的列表中设置默认选择的值

来自分类Dev

如何在实体表单类型中包含来自另一个实体的某些字段?

来自分类Dev

如何在休眠/ jpa实体中使用“大小”作为字段名称?

来自分类Dev

zf2 doctrine2如何在实体列中使用tinyint数据类型

来自分类Dev

vhdl如何在流程中使用实体

来自分类Dev

如何在Go中使用基本类型设置结构字段

来自分类Dev

如何在Angular JS中使用类型编号在输入字段中禁止单个小数点(。)

来自分类Dev

如何在Django Rest Framework中使用库Django-RQL过滤“时间”类型的字段?

来自分类Dev

如何在Elasticsearch提示器中使用Logstash导入CSV数据以完成字段类型

来自分类Dev

如何在 useReducer 中使用具有必填字段的泛型类型?

来自分类Dev

如何在 JSONField 类型的元数据中使用日期字段查询查询?

来自分类Dev

如何在Magento的字段集中添加已经可用的元素?

来自分类Dev

更改扩展实体字段的类型

来自分类Dev

如何在Silex中使用“渲染”在Twig中插入控制器

来自分类Dev

如何在Twig中使用PHP模板引擎而不是Silex中的Twig语法

来自分类Dev

如何在MongoDB中更改字段类型

来自分类Dev

如何在netsuite中更改字段类型?

来自分类Dev

如何在Redis中使哈希字段过期?

来自分类Dev

如何在HeidiSQL中使字段唯一

Related 相关文章

  1. 1

    如何在silex中使实体字段类型可用?

  2. 2

    如何在 Drupal 8 实体中创建隐藏类型字段

  3. 3

    如何在Silex中使用Ajax查询?

  4. 4

    如何在 Silex (Symfony) 中使用会话

  5. 5

    如何在TypeORM中使用TIME类型创建实体列

  6. 6

    如何在Sitecore模板字段中使用Droplist类型

  7. 7

    如何在mysql中使用动态字段类型?

  8. 8

    如何在ElasticSearch中使用脚本更新数组类型的字段?

  9. 9

    如何在Silex的自定义类中使用$ app?

  10. 10

    如何在UML中为不同类型的字段和实体连接建模

  11. 11

    如何在带有实体类型字段的列表中设置默认选择的值

  12. 12

    如何在实体表单类型中包含来自另一个实体的某些字段?

  13. 13

    如何在休眠/ jpa实体中使用“大小”作为字段名称?

  14. 14

    zf2 doctrine2如何在实体列中使用tinyint数据类型

  15. 15

    vhdl如何在流程中使用实体

  16. 16

    如何在Go中使用基本类型设置结构字段

  17. 17

    如何在Angular JS中使用类型编号在输入字段中禁止单个小数点(。)

  18. 18

    如何在Django Rest Framework中使用库Django-RQL过滤“时间”类型的字段?

  19. 19

    如何在Elasticsearch提示器中使用Logstash导入CSV数据以完成字段类型

  20. 20

    如何在 useReducer 中使用具有必填字段的泛型类型?

  21. 21

    如何在 JSONField 类型的元数据中使用日期字段查询查询?

  22. 22

    如何在Magento的字段集中添加已经可用的元素?

  23. 23

    更改扩展实体字段的类型

  24. 24

    如何在Silex中使用“渲染”在Twig中插入控制器

  25. 25

    如何在Twig中使用PHP模板引擎而不是Silex中的Twig语法

  26. 26

    如何在MongoDB中更改字段类型

  27. 27

    如何在netsuite中更改字段类型?

  28. 28

    如何在Redis中使哈希字段过期?

  29. 29

    如何在HeidiSQL中使字段唯一

热门标签

归档