Supponiamo di avere un documento di progettazione con viste, funzioni di aggiornamento, ecc. Supponiamo ora di aggiornare il documento di progettazione aggiungendo un gestore di convalida. Ciò causerà la ricostruzione delle viste definite in questo documento di progettazione anche se non apporto alcuna modifica alla funzione di visualizzazione.L'aggiornamento di un documento di progettazione in couchdb causa la ricostruzione delle viste?
risposta
No, le viste sono non rigenerate purché la proprietà delle viste non venga modificata. CouchDB calcola un hash sulla proprietà views
del documento di progettazione e usa questo hash come nome file della vista.
Utilizziamo questa funzione molto in produzione: aggiorniamo regolarmente i nostri documenti di progettazione e finché le viste non cambiano, le viste non vengono rigenerate.
BTW: Questo è anche il motivo per cui è possibile utilizzare i moduli CommonJS e require()
nelle viste, ma si è limitati ai percorsi all'interno di views
. Si può fare questo ad esempio:
{
...
"views": {
"lib": {
"underscore": "... (underscore.js here)"
},
"my_view": {
"map": "function (doc) { var _ = require('views/lib/underscore'); emit(doc._id, _.pick(doc, 'name', 'address'); }"
}
}
}
Ma non si può usare un require
come questo: var _ = require('underscore');
Spero che questo aiuti!
Sì. Come documentato in View API ("Altering/Changing Views" section) nel Wiki:
Per modificare una vista o vista multipla semplicemente modificare il documento di progettazione (vedi HttpDocumentApi) sono memorizzati in e salvarlo come una nuova revisione. Ciò causa la ricompilazione di tutte le viste in tale documento di progetto all'accesso successivo nel caso in cui il codice di visualizzazione sia stato modificato.
Nota la documentazione si riferisce all'aggiornamento del documento di progettazione non ai relativi campi.
- 1. Aggiornamento di un documento CouchDB in nano
- 2. La nuova versione di SwipeRefreshLayout causa l'errata visualizzazione delle viste
- 3. Come modificare le viste in CouchDB Futon?
- 4. Come aggiornare il record/campo di un documento in couchdb
- 5. CouchDB strategia di controllo delle versioni
- 6. CouchDB: mappa in documento di progetto dà compilation_error
- 7. Scala 2.8 Attore documento di progettazione? Documento di design Akka?
- 8. Come ottenere l'ultimo documento creato in couchdb?
- 9. CouchDB: inserire un nuovo array in un documento
- 10. Ottenere tutti i documenti di progettazione in CouchDB
- 11. Tentativo di comprendere la gerarchia delle viste
- 12. Struttura del documento consigliata per CouchDB
- 13. (aggiornamenti in-place) CouchDB documento di aggiornamento Handlers
- 14. Test CouchDB viste, filtri, elenchi, spettacoli, ecc
- 15. Come verificare se esiste un documento couchdb utilizzando python
- 16. Qual è la procedura migliore durante la creazione di ID documento in couchdb?
- 17. Ricostruzione di errore "JSON non valido UTF-8" da CouchDb sebbene JSON stia bene? Qualche idea?
- 18. CouchDB - codice trigger durante la creazione o l'aggiornamento del documento
- 19. L'invalidazione di una vista personalizzata causa l'annullamento di tutte le viste personalizzate in un gruppo di viste?
- 20. Eliminazione di allegati di documenti in CouchDb
- 21. CouchDB: documento singolo contro "unire" i documenti insieme
- 22. Strumenti e norme per il documento di progettazione tecnica
- 23. Algoritmi per la ricostruzione faccia 3D
- 24. Quanto è specifico per ottenere il documento di progettazione?
- 25. Le viste di nidificazione peggiorano la qualità delle immagini
- 26. Il salvataggio di un documento fisso in un file XPS causa una perdita di memoria
- 27. Modelli/suggerimenti di progettazione per la gestione delle autorizzazioni
- 28. progettazione per la gestione delle eccezioni - motore di app google
- 29. android - cos'è la gerarchia delle viste?
- 30. Ricostruzione di app.config in Visual Studio?