2013-04-21 13 views
5

Sto cercando di trovare qualsiasi informazione se il django ufficiale supporta qualsiasi DBMS noSQL, in particolare MongoDB. Ho trovato uno fork of django 1.3 il django-nonrel (un fork di django ufficiale) e alcuni altri progetti non molto affidabili (i guasti si verificano spesso, secondo i commenti che ho trovato sul web). Django sta per supportare ufficialmente noSQL?supporto integrato django per MongoDB

risposta

4

Forse, ci sono other ways per raggiungere i tuoi obiettivi, oltre ad andare noSQL.

In breve, se hai solo bisogno di campi dinamici, hai altre opzioni. Ho una vasta interessante resoconto su di loro in another answer:

Sì, che non è esattamente quello che ho chiesto, ma questo è tutto ciò che abbiamo attualmente.

+1

Ehi, nella mia azienda, ho dovuto creare qualcosa per consentire anche i campi dinamici, e abbiamo amato così tanto i postgres, così è nato l'HstoreFlattenfields ... https://github.com/multmeio/django-hstore -flattenfields Dai un'occhiata a questo e aiutaci! Abbiamo fatto grandi progressi ... come le query che utilizzano l'ORM nativo di django, come un '' 'Entity.objects.filter (my_dynamic_field__gte = 10)' '' –

+0

@Luan, è bello! Ci penserò sicuramente! Grazie! –

+1

@Luan, hai sicuramente bisogno di un file README nel tuo repository ... :) –

2

Come hai detto, il codice biforcuto non è mai la migliore alternativa: le modifiche richiedono più tempo per entrare nel fork, potrebbe spezzare le cose ... E anche con django-nonrel, non è proprio Django mentre perdi cose come l'ereditarietà del modello, M2M ... praticamente tutto ciò che dovrà fare una query JOIN dietro le quinte.

Django sta per supportare NoSQL? Per quanto ne so, non ci sono piani sulla roadmap per farlo nel breve periodo. Secondo Russell Keith-Magee durante il suo discorso su PyCon Russia 2013, "NoSQL" è sulla tabella di marcia ma a lungo termine, oltre a SQLAlchemy. Quindi se vuoi aspettare, ci vorrà molto tempo, ho paura.

In ogni caso, anche se non è l'ideale, è comunque possibile utilizzare Django ma utilizzare qualcos'altro come ORM. Nulla ti impedisce di usare vanilla Django e qualcosa come MongoDB invece di Django ORM.

Problemi correlati