2016-06-10 13 views
6

Ho sviluppato alcune cose e sai che durante i primi prototipi i tipi e le tabelle cambiano rapidamente ... sarebbe bello ripulire i vecchi dati e ricominciare da capo in alcune mesh.Come cancellare i dati nel DB della pistola?

Per ora stavo usando il server HTTP di esempio così ho cancellato data.json; ma ho dimenticato che anche localStorage nel browser deve essere cancellato.

Si potrebbe supporre che si potrebbe mettere (null)

ho chiesto su gitter e ottenuto

https://github.com/amark/gun/wiki/delete

tranne che per le eliminazioni, lol, la nostra scusa è "Funziona come il sistema operativo, quando cancelli> qualcosa viene semplicemente gettato nel cestino/cestino. Tutto qui. " meglio prevenire che curare se

se si sta cercando di "eliminare" roba perché incasinato durante lo sviluppo> qualcosa, seguire questo processo in tre fasi: 1) localStorage.clear() in ogni> scheda del browser è disponibile al massimo, 2) Arresta il server e rm data.json, 3) riavvia> tutto. Dovresti quindi avere una lavagna pulita. Spesso mentre sono> devleoping qualcosa ho messo localStorage.clear() nella parte superiore del mio codice, quindi devo solo> preoccuparmi di cancellare il server.

risposta

6

Benvenuto nella comunità dei cannoni! Grazie per aver fatto domande.

Sì, l'eliminazione dei dati avviene semplicemente con gun.put(null). Prendere:

var gun = Gun(); 
var users = gun.get('users'); 
users.put({alice: {name: 'alice'}, bob: {name: 'bob'}}); 
// now let's delete bob 
users.path('bob').put(null); 

Se (come lei ha ricordato nella questione), tuttavia, si intende "eliminare i dati", come nel voler cancellare gli errori durante lo sviluppo la vostra applicazione. Avrai voglia di fare quello che hai menzionato: localStorage.clear() in tutti i browser, bloccare tutti i server e .

Per altri sviluppatori, potrebbe essere utile sapere che la pistola utilizza un tipo di metodo di rimozione. Non è possibile eliminare i nodi stessi, vengono semplicemente de-referenziati, un po 'come il modo in cui il sistema operativo sposta semplicemente i file in un cestino/cestino. Questo metodo tombstone è molto importante in un ambiente distribuito, in modo tale che l'operazione "delete" venga replicata su ogni peer.

Grazie per aver risposto alla tua stessa domanda! Come sempre, se ti perdi o hai bisogno di aiuto sali sulla https://gitter.im/amark/gun.

+1

'gun(). Put (null)' sembra la risposta più generale, dal momento che la pistola ora può girare in luoghi senza localStorage (come su react-native usando async-storage) –

Problemi correlati