Attualmente ho una semplice app per cui gli utenti possono creare un elenco e spuntare gli elementi come completati. I dati sono strutturati come segue: '/ acc_' + USER_ID + '/ done' e '/ acc_' + USER_ID + '/ todo'. Quando gli oggetti sono "fatti", vengono spostati nella lista dei fatti.Come strutturare i dati e le regole di Firebase per la condivisione dei dati tra gli utenti?
Quello che mi piacerebbe è che un utente possa condividere un elenco con un altro utente autenticato.
Le regole attualmente sembrano le seguenti che sembrano funzionare.
{
"rules": {
"$userPath": {
".read": "auth != null",
".write": "auth != null",
".validate": "$userPath === 'acc_' + auth.id"
}
}
}
Quello che penso che ho bisogno di fare è di avere ogni utente ha una serie di indirizzi e-mail approvati hanno in qualche modo gancio che nelle regole di sicurezza.
In alternativa, è possibile creare un elenco nella radice e avere accesso solo al creatore e agli utenti condivisi.
Qualche consiglio?
non ho avuto molta fortuna con le regole di cui sopra. Ciò che segue sembra funzionare sebbene con 'acc_' + auth.id '/ shared' sia un array dove la prima voce è quella a cui voglio avere accesso. Anche se, a ben vedere, questa non sembra una grande soluzione. Penso che i miei problemi con l'architettura dell'app siano profondi. { "rules": { "$ userPath": { ".write": "$ userPath == 'acc_' + auth.id || root.child ($ userPath) .child ('condiviso'). child ('0'). val() == auth.email ", " .read ":" $ userPath == 'acc_' + auth.id || root.child ($ userPath) .child ('condiviso')) .child ('0'). val() == auth.email " } } } – defmech
così hai trovato qualche buona soluzione? – jujule