根据如何将存储库注入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) 假设我有一堂课
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”)之一。
我可以配置序列化程序来对这些值进行类型转换吗?
如何使用键盘快捷键从插入符号到文件末尾选择所有代码?我在文档中找不到任何内容
我在Ubuntu 16.04上使用PhpStorm 2017.1.
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)