MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Odpytywanie danych z MongoDB za pomocą GraphQL w Django:Get-Go (1)

Łatwość MongoDB połączona z siłą GraphQL:Nie mogę wymyślić lepszej kombinacji niż ta! Będę kuratorem serii artykułów do pracy nad GraphQL + MongoDB + Django. To pierwsza część tej serii.

W tym artykule dowiesz się, jak:

  • importuj dane do MongoDB za pomocą pliku CSV
  • zainstaluj GraphQL i inne powiązane biblioteki Django
  • przeciągnij dane z MongoDB do Django

Z .csv do kolekcji MongoDB

Uruchom ten kod bezpośrednio w terminalu (nie w konsoli mongod), aby zaimportować plik CSV z lokalnego. Używamy mongoimport, który jest narzędziem/poleceniem, które umożliwia nam importowanie dowolnego pliku JSON, CSV do TSV.

mongoimport -d vendors -c vendors --type csv --file vendorlist.csv --headerline

gdzie

-d:nazwa bazy danych

-c:nazwa kolekcji

-headerline:używane do przechowywania nagłówków

Instalacja GraphQL w Django

Kolejna saga o niezgodności wersji. Grałem już z nimi, więc nie musisz 🙂

Poniżej znajdują się błędy, które powodowały wiele zamieszania w odniesieniu do wersji-

Błąd, gdy wersja graphene-django to 3.0b7, która była najnowsza, ale nie mogła zaimportować pakietu get_default_backend

Polecenia instalacji każdej biblioteki/pakietu/sterownika

  • grafen
pip install graphene==2.1.8
  • rdzeń graphql
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"

💡 Nie zapomnij dodać „graphene-django” i „graphene” do pliku settings.py

Pobieranie danych z kolekcji MongoDB do projektu Django

Zaimportuj klasę Document z biblioteki mongoengine, a następnie zaimportuj wymagane pola.

💡 Możesz sprawdzić typ danych pola w MongoDB w konsoli MongoDB Atlas, a następnie zaimportować to pole do swojego projektu Django. Przykład- Pole ID w id dokumentu zawsze jest ObjectIDField.

Mam dostawców dokumentów MongoDB i klasa, która uzyskuje dostęp do dokumentu to VendorData.

To była pierwsza część serii samouczków MongoDB+Django+GraphQL. W dalszej części wyjaśnię więcej o pisaniu zapytań w Django i GraphQL.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pobieranie znacznika czasu z identyfikatora mongodb

  2. Jak poprawnie połączyć się z klastrem Atlas M0 (Free Tier) za pomocą sterownika Java?

  3. C# mongodb - jak zaktualizować zagnieżdżone elementy tablicy

  4. Usuń obiekt z tablicy zagnieżdżonej za pomocą $pull i $[identyfikator] (mongoDB 3.6)

  5. Klastry MongoDB o wysokiej wydajności na platformie Azure