使用枚举的Doctrine数组并将其存储在单独的表中



我目前正在构建实体模型,我的一个条令实体与外部字典(如ENUM(具有ManyToMany关系。因此,实体字段将是枚举数组。

我正在寻找一种方法,将其作为实体上的数组字段,但将其存储为一个单独的DB表。

希望获得任何建议/链接等。

这个问题有点断章取义,但。。

多对多已经是实体中的一个数组(迭代器(。

您可以创建自己的实体作为多对多,并将列设置为枚举。

最后,我决定创建一个实体来存储这个关系。为了确保它在与父实体取消链接时会被删除,我在OneToMany关系端使用了orphanRemoval=true选项。
class Entity {
/**
* @ORMOneToMany(targetEntity="EntityType", mappedBy="entity", orphanRemoval=true)
*/
protected $types;
}
class EntityType {
/**
* @ORMManyToOne(targetEntity="Entity")
*/
protected $entity;
/**
* @ORMColumn(type="MyEnum")
*/
protected MyEnum $type;
}

相关内容

  • 没有找到相关文章

最新更新