Apostrophe Pieces与用户

时间:2016-12-22 16:57:41

标签: apostrophe-cms

我正在创建一个架构,我希望与撇号用户建立关系,但似乎无法让它发挥作用?

{
      name: '_coaches',
      label: 'Coaches',
      type: 'joinByArray',
      withType: 'apostrophe-users' // also tried just 'user(s)',
      idsField: 'coachIds'
}

有没有人知道上述情况是否可能,如果是,我做错了什么?

其次,是否可以对上述内容进行过滤,以确定他们是否在教练中。团体与否。因此,只有特定组中的用户才能被选择用于上述关系。

1 个答案:

答案 0 :(得分:2)

我是P'unk Avenue的Apostrophe的首席开发人员。

这在某种意义上是有效的,但默认情况下,用户总是未发布,并且该字段已从架构中删除,因此公众永远无法找到它们。

这是因为根据我们的经验,将一个人的概念混合在一个人的前端目录和一个可以登录的用户之间通常会导致Apostrophe 0.5的沮丧和混乱。 “这是一个用户,但他们无法登录?这是一个帐户,但他们不属于目录?我不明白,”等等。

因此,我们建议制作一个单独的“个人资料”片段类型来代表前端的人,并允许用户和群组用于登录和权限,而不是其他任何内容。

如果您确实希望通过addFields将已发布的字段添加回用户和群组,但我们不建议这样做。

嗯,但所有这一切,你加入的实际错误是你应该使用apostrophe-user(参见撇号用户模块中的name属性;这就是一个在docs集合的type属性中调用user ,它与模块的名称不同)。实例是单数,模块是复数。根据您的预期应用,这可能是您需要知道的。

至于只加入特定群体成员的人,我想知道为什么你不加入该群体并查看其_users加入。您需要设置join过滤器以显式获取该附加连接,因为默认情况下Apostrophe不会递归连接以防止无限循环。