gpt4 book ai didi

symfony - symfony2中的多个多对多关系

转载 作者:行者123 更新时间:2023-12-01 09:04:52 24 4
gpt4 key购买 nike

我有 3 个实体:

  • 歌曲
  • 艺术家
  • 类型

一首歌可以有多种流派,反之亦然。一首歌也可以有多个艺术家,反之亦然。

这就是我尝试创建两个多对多关系的原因。但是,在生成实体类时,两者中的第一个总是被第二个“覆盖”,并且没有为那个创建任何变量或访问器..

这是我的 yaml:(更新)

Foo\BarBundle\Entity\Song:
type: entity
table: song
id:
id:
type: integer
generator:
strategy: AUTO
fields:
title:
type: string
length: 300
mime_type:
type: string
length: 20
filesize:
type: integer
length: 20
length:
type: string
length: 20
created_at:
type: datetime
gedmo:
timestampable:
on: create
manyToOne:
user:
targetEntity: Spotaset\UserBundle\Entity\User
inversedBy: songs
manyToMany:
genres:
targetEntity: Genre
inversedBy: songs
manyToMany:
artists:
targetEntity: Artist
inversedBy: songs


Foo\BarBundle\Entity\Artist:
type: entity
table: artist
id:
id:
type: integer
generator:
strategy: AUTO
fields:
name:
type: string
length: 100
unique: true
manyToMany:
songs:
targetEntity: Song
mappedBy: artistss

Foo\BarBundle\Entity\Genre:
type: entity
table: genre
id:
id:
type: integer
generator:
strategy: AUTO
fields:
name:
type: string
length: 100
unique: true
manyToMany:
songs:
targetEntity: Song
mappedBy: genres

我对关系数据库了解不多,所以我不知道这是一个错误还是这个设计总体上很糟糕..

非常感谢所有帮助!

最佳答案

终于解决了这个(愚蠢的)问题。原来我必须在一个 manyToMany 标题下定义多对多,如下所示:

  manyToMany:
genres:
targetEntity: Genre
inversedBy: songs
artists:
targetEntity: Artist
inversedBy: songs

关于symfony - symfony2中的多个多对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9525157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com