小编Bru*_*pha的帖子

Symfony - 在服务中注入doctrine存储库

根据如何将存储库注入Symfony2中的服务? 就像是

acme.custom_repository:
    class: Doctrine\ORM\EntityRepository
    factory: ['@doctrine.orm.entity_manager', getRepository]
    arguments:
        - 'Acme\FileBundle\Model\File'
Run Code Online (Sandbox Code Playgroud)

但我得到一个例外

无效的服务"acme.custom_repository":类"EntityManager5aa02de170f88_546a8d27f194334ee012bfe64f629947b07e4919__CG __\Doctrine\ORM\EntityManager"不存在.

我怎么能在Symfony 3.4中做到这一点?

更新:

EntityClass实际上是一个有效的类FQCN(也可以在phpstorm上使用复制引用),只是重命名它,因为公司名称在其中:).无论如何更新它.

BlueM的解决方案非常有效.如果你没有使用自动装配这里是服务定义:

Acme\AcmeBundle\Respository\MyEntityRepository:
    arguments:
        - '@Doctrine\Common\Persistence\ManagerRegistry'
        - Acme\AcmeBundle\Model\MyEntity # '%my_entity_class_parameter%'
Run Code Online (Sandbox Code Playgroud)

php symfony doctrine-orm symfony-3.4

9
推荐指数
2
解决办法
9061
查看次数

反序列化时的 symfony 序列化器类型转换

假设我有一堂课

class MyObj
{
    /** @var int */
    private $myProp;

    public function getMyProp(): int
    {
        return $this->myProp;
    }

    public function setMyProp(int $myProp): self
    {
        $this->myProp = $myProp;

        return $this;
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我想反序列化以下

$body = '{"myProp": "4"}';
$myObj = $serializer->deserialize($body, MyObj::class, 'json');
Run Code Online (Sandbox Code Playgroud)

我显然收到一个错误,说类型不匹配。

类“MyObj”的“myProp”属性的类型必须是“int”(给出的“string”)之一。

我可以配置序列化程序来对这些值进行类型转换吗?

serialization symfony deserialization

4
推荐指数
1
解决办法
1146
查看次数

PhpStorm选择文本直到文件结尾

如何使用键盘快捷键从插入符号到文件末尾选择所有代码?我在文档中找不到任何内容

我在Ubuntu 16.04上使用PhpStorm 2017.1.

intellij-idea phpstorm

1
推荐指数
1
解决办法
370
查看次数

nestjs Using ConfgService with TypeOrmModule

I set up a ConfigService as described in docs https://docs.nestjs.com/techniques/configuration

how can I use this service with the the TypeOrmModule?

TypeOrmModule.forRoot({
  type: 'mysql',
  host: 'localhost',
  port: 3306,
  username: 'root',
  password: 'root',
  database: 'test',
  entities: [__dirname + '/**/*.entity{.ts,.js}'],
  synchronize: true,
}),
Run Code Online (Sandbox Code Playgroud)

nestjs

0
推荐指数
2
解决办法
493
查看次数