我创建了一个主题集合。我想为同一个集合创建多对多关系。列名是related_topics。
我遵循了文档,因此我为该列创建了一个多对多关系和一个连接表,它将topic.id与topic_related.topic_id1以及从另一边topic.id与topic_related.topic_id2相关联。
对于主题 (A),我可以选择主题 (B)。
但是,如果我打开 (B),我在那里看不到任何相关主题。
我希望看到(A)。
难道我做错了什么 ?
谢谢你的时间 !
编辑1:
我创建了一个主题集合。我想为同一个集合创建多对多关系。列名是related_topics。
我遵循了文档,因此我为该列创建了一个多对多关系和一个连接表,它将topic.id与topic_related.topic_id1以及从另一边topic.id与topic_related.topic_id2相关联。
对于主题 (A),我可以选择主题 (B)。
但是,如果我打开 (B),我在那里看不到任何相关主题。
我希望看到(A)。
难道我做错了什么 ?
谢谢你的时间 !
编辑1:
据我所知,描述中似乎存在差异,但是,这是你想要做的:
topics.related_topics => junction collection => topics.id
如果是这样,您已经在字段related_topics上创建了从父级到一个或多个子级的单向关系,因为您正在询问哪些主题与该项目相关。
如果您想查看子项与哪些父项相关,请使用相同的联结集合创建另一个M2M 接口,但翻转以前的 M2M 接口设置中的字段,现在您可以自动以另一种方式查看它。
然后你应该这样做:
topics.id => junction collection => topics.related_topics
M2M 的逻辑是单向的:当它扩展 O2M 时,是许多孩子的父母:https ://docs.directus.io/guides/interfaces.html#core-interfaces
但是,如果您想通过以下方式使其双向扩展M2M 接口,建议您对 Vue.js 有中级理解: https ://docs.directus.io/extensions/interfaces.html
您需要在以下位置更新 input.vue:https ://github.com/directus/app/tree/master/src/interfaces/many-to-many