Для веб-приложения у меня есть список пользователей и mindmaps .
Каждый пользователь должен иметь возможность 1. Читать / писать ТОЛЬКО свой умmap 2. Предоставить доступ к своей карте ума другому пользователю (только для чтения)
В настоящее время пользователь хранит ссылку на свои собственные карты разума (id), чтобы они могли впоследствии извлечь ее из / mindmaps.Проблема с этим подходом состоит в том, что нет никакого способа для карты разума быть переданной другому пользователю.Вот как сейчас выглядят мои правила и база данных.
Правила
{
"rules": {
"users": {
"$uid": {
".write": "$uid === auth.uid",
".read" : $uid === auth.uid"
}
},
// user can only read mind maps of their own.
"mindmaps": {
"$mindmap": {
".write": "data.child('ownerUid').val() === auth.uid",
".read" : "data.child('ownerUid').val() === auth.uid || data.child('sharedTo').val() === auth.uid"
}
}
}
}
База данных
mindmaps: {
mindmap1: {
owner: "cjh",
sharedTo: "someOtherUser"
}
}
users: {
cjh: {
mindmaps: {
0: "mindmap1"
}
},
someOtherUser: { … }
}
Как еще я могу структурировать данные и правила?