A Django app to import tabular data from Google Sheets
Project description
django-gsheets-import
The django-gsheets-import
package is a Django application to facilitate data import from Google Sheets within Django's admin framework.
It extends the great django-import-export
package, which already provides import and export capabilities for all local file formats supported by tablib
.
Exporting data from Django's admin to Google Sheets is currently not supported but planned for a future release.
Below, we briefly outline how to install and use the package.
A more detailed documentation about django-gsheets-import
is available here.
Installation and configuration
The package and its dependencies can be installed from PyPI via pip install -U django-gsheets-import
.
To use the package in your Django project, just add import_export
and gsheets_import
to the list of installed apps in your settings.py
, i.e.
## in settings.py
INSTALLED_APPS = [
...,
'import_export',
'gsheets_import',
...
]
In order for django-gsheets-import
to work properly, it needs to be associated with an underlying Google Cloud Project (GCP).
How to properly set up an appropriate GCP using the Google Cloud Console is described in more detail in the corresponding section of our documentation.
At this point, let us just note that all of the services needed are available in Google Cloud's Free Tier, so that there is no need to set up a billing account.
Assuming that a suitable GCP already exists, go to the Google Cloud Console and navigate to APIs & Services > Credentials
.
From there, copy an API key, as well as the desired OAuth Client ID and add them to your settings.py
.
The required project number can be found under IAM & Admin > Settings
and must also be added to settings.py
, i.e.
## in settings.py
GSHEETS_IMPORT_API_KEY = '<Your API developers key>'
GSHEETS_IMPORT_CLIENT_ID = '<Your OAuth Client ID>'
GSHEETS_IMPORT_APP_ID = '<Your project number>'
The package is now ready to be used with your Django project.
Features and usage
The django-gsheets-import
package presented here strongly relies on the functionality provided by the django-import-export
package.
It extends that package by the option to allow the user to import data from their Google Sheets via the Django admin.
The usage of django-gsheets-import
is very similar to that of django-import-export
, which is nicely documented here.
It might also be instructive to have a look at the example Django project that ships with django-gsheets-import
(see the documentation for more details).
In short, integrating the Google Sheets import feature offered by django-gsheets-import
into your Django project's admin site is a two-step process:
- Define a resource which determines how the fields of a given model translate to their import (and export) representations.
- Define the admin interface of the considered model as a subclass of
ImportGoogleModelAdmin
or any of the other classes provided by the package'sadmin
submodule, namelyImportGoogleMixin
,ImportGoogleExportModelAdmin
, andImportGoogleExportMixin
.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-gsheets-import-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d3b722e53c2028abd20a7ce4380872424e598e5958ecbb6501f15aa08aee31e |
|
MD5 | b599ec4e25638b7d82a748498d224d33 |
|
BLAKE2b-256 | 438e27b3f4e40f5f5d0512d706fd6992f7c5d84b8523e95de282e59f37654604 |
Hashes for django_gsheets_import-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 763683a9014a0c7adc07770b2c84e32e7e802aba9e499575ac6a168bcb825e96 |
|
MD5 | bf0279bee09f5b81933f4321f842de1d |
|
BLAKE2b-256 | 33cad2847a091f57d764d73981f96dad84fd6ec43b3997468cd6f3432964f54d |