Skip to content

ibqn/djongo-tracks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Getting started

create a virtual environment

python3 -m venv './venv'

activate it

source venv/bin/activate.fish

initialize a poetry project

poetry init

install django and hte latest version of djongo as well as graphene-django

poetry add django
poetry add git+ssh://git@github.com:nesdis/djongo.git
poetry add graphene-django

create a django project with

django-admin startproject app .

create a new tracks app

python manage.py startapp tracks

define your model, then include your app in settings and make migrations

python manage.py makemigrations
python manage.py migrate

spin up the server

python manage.py runserver 0:4000

Setup and manage MongoDB

pull mongo image

docker pull mongo

start mongo instance

docker run -it -v mongodata:/data/db -p 27017:27017 --name mongodb -d mongo

double check, that it is running

docker ps

check logs if necessary

docker logs mongodb -f

check into container

docker exec -it mongodb bash

connect to mongo, simply by running mongo

mongo -host localhost -port 27017

stop or start container

docker stop mongodb
# or
docker start mongodb

If you prefer some gui data visualization, than you can install MongoDB Compass

sudo dpkg -i ~/Downloads/mongodb-compass_1.26.0_amd64.deb

Create new data from shell

open up django shell

python manage.py shell

create new data

from tracks.models import Track
track1 = Track(title='Track 1', description='Track 1 description', url='https://localhost/track1')
track1.save()
# or
track2 = Track.objects.create(title='Track 2', description='Track 2 description', url='https://localhost/track2')

Dump data from database

export data from app's database

python manage.py dumpdata --indent 2 tracks > tracks/fixtures/tracks.json

Load data from fixtures into database

Load data based on matching fixture file name tracks.json

python manage.py loaddata tracks

Create superuser from django shell

from django.contrib.auth.models import User
user=User.objects.create_user('foo', password='bar')
user.is_superuser=True
user.is_staff=True
user.save()

Create superuser

python manage.py createsuperuser

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages