Skip to main content

A Django app that helps keep CartoDB tables synchronized with Django models.

Project description

A Django app that helps keep CartoDB tables synchronized with Django models.

Requirements

Django >= 1.8, cartodb-python, a CartoDB account.

Installation

Use pip.

Add to INSTALLED_APPS:

INSTALLED_APPS += (
    'cartodbsync',
)

Then add the appropriate configuration details to your settings.

You will need some way of letting django-cartodb-sync about instances that need to be inserted, updated, or deleted. The simplest way is to use signals and the SyncEntry methods mark_as_pending_delete, mark_as_pending_insert, and mark_as_pending_update.

Finally, configure a cron job to run the cartodbsync management command. If you have existing model instances, mark all for insertion by running:

django-admin.py cartodbsync --markinsert

Configuration

Add the following to your settings:

CARTODB_SYNC = {
    'API_KEY': '<your api key>',
    'DOMAIN': '<your CartoDB domain>',
    'MODELS': [
        {
            'CARTODB_TABLE': '<model CartoDB table>',
            'MODEL_CLASS': '<example.Model>',
            'SYNCHRONIZER_CLASS': '<example.Synchronizer>',
        }
    ]
}

Everything between < and > should be replaced with appropriate details. You can list as many models as you like within the MODELS entry.

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

django-cartodb-sync-0.3.0.tar.gz (11.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page