[英]Directus : How to create a many-to-many relationship to the same collection properly
我创建了一个主题集合。 我想为同一个集合创建多对多关系。 列名称是related_topics 。
我按照文档进行操作,因此我为此列创建了一个多对多关系和一个联结表,该联结表将topic.id与topic_related.topic_id1以及从另一端topic.id与topic_related.topic_id2 相关联。
对于主题 (A),我可以 select 主题 (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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.