我有软件< -m:n->标记,其中软件是关系的主要部分(标记有mappedby="softwares"
)。
那么,当我想将测试数据导入数据库时,我把:
Software(software1):
title: title1
description: descr1
Software(software2):
title: title2
description: descr2
Tag(tag1):
title: pay
softwares: [software1]
Tag(tag2):
title: pay2
softwares: [software2]
执行此脚本后,我们将填充所有数据,并在里面创建包含关系数据的新表Tag_Software。
但是,对我而言,更改标签和软件的顺序更合乎逻辑:
Tag(tag1):
title: pay
Tag(tag2):
title: pay2
Software(software1):
title: title1
description: descr1
tags: [tag1]
Software(software2):
title: title2
description: descr2
tags: [tag2]
即。我可以单独创建标签,然后在创建软件时只需将此标签放入此软件制作链接。 (它应该工作,因为它适用于Java代码)。但它在这里不起作用 - 因此我们有空的Tag_Software表。
你能解释一下这种行为吗?或者如何做得更好?
答案 0 :(得分:1)
我想你自己回答了这个问题。你这么说:
有软件< -m:n->标签在哪里 软件是其中的主要部分 关系(标签有 的mappedBy = “软件”)。
这意味着属性“softwares”管理rel,你需要在那里添加链接。如果将它们添加到另一端,则不会建立rel(如您所见)。
如果您想更改此设置,请将 mappedBy 修改为代码