Snadnost MongoDB v kombinaci se silou GraphQL:Nenapadá mě lepší kombinace než tato! Budu kurátorem série článků pro práci na GraphQL + MongoDB + Django. Toto je první díl této série.
V tomto článku se dozvíte, jak-
- importujte data do MongoDB pomocí souboru CSV
- nainstalujte GraphQL a další související knihovny Django
- natáhnout data z MongoDB do Django
Z .csv do sbírky MongoDB
Spusťte tento kód přímo ve svém terminálu (nikoli konzoli mongod) a importujte soubor CSV z místního místa. Používáme mongoimport, což je nástroj/příkaz, který nám umožňuje importovat jakýkoli soubor JSON, CSV do souboru TSV.
mongoimport -d vendors -c vendors --type csv --file vendorlist.csv --headerline
kde
-d:název databáze
-c:název kolekce
-headerline:používá se k zachování záhlaví
Instalace GraphQL v Django
Další sága o neshodě verzí. Už jsem si s nimi hrál, takže nemusíte 🙂
Níže jsou uvedeny chyby, které způsobily mnoho nejasností ohledně verzí-
Chyba, když byla verze graphene-django 3.0b7, která byla nejnovější, ale nemohla importovat balíček get_default_backend
Příkazy pro instalaci každé knihovny/balíčku/ovladače
- grafen
pip install graphene==2.1.8
- graphql-core
python -m pip install graphql-core==2.3.2
- pymongo
python3 -m pip install pymongo==3.12.1
- grafen-django
pip install "graphene-django>=2.0"
💡 Nezapomeňte do souboru settings.py přidat „graphene-django“ a „graphene“
Získání dat sbírky MongoDB do projektu Django
Importujte třídu Document z knihovny mongoengine a následně importujte pole, která jsou vyžadována.
💡 Můžete zkontrolovat datový typ pole v MongoDB v konzole MongoDB Atlas a poté importovat pole do vašeho projektu Django. Příklad – Pole ID v ID dokumentu je vždy ObjectIDField.
Mám dodavatele dokumentů MongoDB a třída, která k dokumentu přistupuje, je VendorData.
Toto byla první část série tutoriálů MongoDB+Django+GraphQL. Více o psaní dotazů v Django a GraphQL vysvětlím v pozdějších částech.