api-platform.com - 模式生成器:强制字段基数会生成错误的 ORM 基数
问题描述
当我尝试强制基数时,模式生成器在 PHP 文件中生成错误的 ORM 基数,简短示例:
YAML 配置文件:
CreativeWork:
properties:
comment: { range: "Comment", cardinality: "(1..*)" }
Comment:
properties: {}
生成的PHP文件:
/**
* @var Collection<Comment>|null comments, typically from users
*
* @ORM\ManyToMany(targetEntity="App\Entity\Comment")
* @ORM\JoinTable(inverseJoinColumns={@ORM\JoinColumn(nullable=false, unique=true)})
* @ApiProperty(iri="http://schema.org/comment")
*/
private $comments;
预期关系: OneToMany;实际:多对多。
我错过了什么 ?
干杯
解决方案
从库源代码中可以看出,生成 OneToMany 注释mappedBy
参数是必需的。可能,文档不完整。
不过,您可以随意更改任何生成的代码。例如,如果您需要单向关联。
推荐阅读
- python - 如何在 python 中定义正在写入 AWS Redshift Postgres DB 的数据的列类型
- c# - 关于如何在 using 子句中重构嵌套的 try/catch 块的建议
- python - Python 'float64' 无法转换为 MySQL 类型,但在手动查询中没问题
- java - 如何从句子中取出中缀?
- sharepoint - 如何使用多个条件格式化 SharePoint 列表视图
- php - 发送数据到数据库的问题
- nestjs - NestJS - 无法解析队列?
- angular - 如何通过电子桌面应用程序中的 IpcRenderer 从角度特征组件向电子主进程发送消息
- python - 无需通过 SparkPost API 使用密件抄送即可将单个电子邮件发送给多个收件人
- java - 通过 JAVA API 将映射放入 ElasticSearch