【问题标题】:LoopBack Relational Mapping : Events and InvitationsLoopBack 关系映射:事件和邀请
【发布时间】:2017-04-11 21:03:42
【问题描述】:
我正在尝试为一个简单的事件应用程序建模。
基本上:
- 用户可以创建事件
- 一个用户可以邀请多个用户参加一个活动
- 用户可以接受/拒绝邀请
- 如果用户是所有者或正在参与(接受邀请),则用户可以检索事件。在返回的对象中应该可以看到差异
- 用户可以检索活动当前接受/拒绝的邀请(实际上是用户,而不是外键)
- 用户可以将自己从事件中移除
要考虑的事情太多了,所以我脑子里都混在一起了,我失去了整个画面。我不完全理解我应该如何实施接受/拒绝邀请以及我应该如何检索有关当前参与者的信息。背后是什么关系?
我想我只知道如何使用引用来做这件事,但是我的前端是移动的,所以我不想在第一次获取后发出很多请求以通过引用获取每个对象...
如果有人可以照亮我...
谢谢:)
【问题讨论】:
标签:
mongodb
object
model
relationship
loopback
【解决方案1】:
您应该有一个邀请模型和一个包含以下字段的事件模型。
邀请:eventId、userInvited、已接受
邀请属于一个事件,属于一个用户
活动:您的活动详情、活动所有者
然后对于用户,您可以使用远程方法获取事件
Invitation.find({where: {userInvited: user.id}}, include: 'event')
.then((event) => event.id)
并通过事件,获取所有用户
.then((eventId) => Invitation.find({where: {eventId}}, include: 'user'))
.then((invitations) => invitations.map((invitation) => invitation.toJSON().user))
这是一个关于如何实现你想要的东西的速写。