Django usage¶
Django Package Interfaces¶
# At settings.py
from pandas_orm.django.setup import get_django_databases
DATABASES = get_django_databases({
'url': 'postgresql://username:password@localhost:5432/name',
'engine':'django.db.backends.postgresql'
})
# Default alternative
DATABASES = get_django_databases(BASE_DIR=BASE_DIR)
from pandas_orm.django.query import query_to_dataframe
@to_dataframe
def get_queryset()
return Collaborator.objects.all()
df = get_queryset()
from pandas_orm.django.query import to_dataframe
df = query_to_dataframe(Collaborator.objects.all())
Django Package Models¶
you can use the from pandas_orm.django.db import Model
class:
from django.db import models
from pandas_orm.django.db import Model
class Collaborator(Model):
name = models.CharField(max_length=200)
first_name = models.CharField(max_length=200, null=True)
last_name = models.CharField(max_length=200, null=True)
email = models.CharField(max_length=200)
profile_link = models.CharField(max_length=250, null=True)
image_url = models.CharField(max_length=250, null=True)
collaborators = test_models.Collaborator.objects.all()
df = collaborators.to_dataframe()
df['last_name'] = 'test'
test_models.Collaborator.bulk_update(df, fields=['last_name'])
# or naive way
test_models.Collaborator.bulk_update(df)
Django Package DataFrame & QuerySet¶
you can use the from pandas_orm.django.dataframe import DataFrame
class:
from pandas_orm.django.dataframe import DataFrame
last_name = "collaborator_bulk_create_with_specified_model_naive"
df_new = DataFrame([dict(
name="myname",
email="test@test.test",
last_name=last_name
)], orm_model=models.Collaborator)
###################
### bulk_create ###
###################
created = df_new.bulk_create()
objs = models.Collaborator.objects.all()
df_update = objs.to_dataframe()
df_update['last_name'] = last_name
###################
### bulk_update ###
###################
updated = df_update.bulk_update()