Skip to main content

Salesforce backend for Django’s ORM.

Quick Start

  1. Install django-salesforce: pip install django-salesforce

  2. Add the salesforce app to your INSTALLED_APPS setting

  3. Add a salesforce connection to your DATABASES setting:

    'salesforce': {
        'ENGINE': 'salesforce.backend',
        "CONSUMER_KEY" : '',
        "CONSUMER_SECRET" : '',
        'USER': '',
        'PASSWORD': '',
        'HOST': 'https://test.salesforce.com',
    }
  4. (optional) To override the default REST timeout of 3 seconds, define SALESFORCE_QUERY_TIMEOUT in your settings file.

  5. (optional) If you want to use another name for your Salesforce DB connection, define SALESFORCE_DB_ALIAS in your settings file.

  6. Add salesforce.router.ModelRouter to your DATABASE_ROUTERS setting:

    DATABASE_ROUTERS = [ "salesforce.router.ModelRouter" ]
  7. Define a model that extends salesforce.models.SalesforceModel

  8. If you want to use the model in the Django admin interface, use a ModelAdmin that extends salesforce.admin.RoutedModelAdmin

  9. You’re all done! Just use your model like a normal Django model.

Caveats

This package is in continuous development, and the ultimate goal is to support all reasonable features of the Salesforce platform, but for now here are the potential pitfalls and unimplemented operations:

  • Large Objects — Since the entire result set needs to be transferred over HTTP, and since Salesforce tends to use extremely long column counts in their tables, it’s assumed that users will create Django-Salesforce models that are specific to the individual app needs. Models with this library are for example and documentation purposes.

  • Custom Object Names — Custom Salesforce tables and columns (and a couple other SF concepts) are indicated with a double-underscore in the name, and will need to have their Django field name overridden (with ‘db_column’), so to not interfere with the double-underscore syntax used in Django query filters.

  • Inheritence — All models for object types on Salesforce must extend salesforce.models.SalesforceModel. The model router checks for this to determine which models to handle through the Salesforce connection.

  • Multiple Updates — Multiple update support is not yet implemented.

  • Multiple Deletes — Multiple delete support is not yet implemented.

  • Database Sync — There is no plan to support DB creation for the forseeable future.

Metadata

Release files for django-salesforce 0.1.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-salesforce 0.1.6.2
File Size Uploaded
django-salesforce-0.1.6.2.tar.gz 26.4 kB Details

Release files / django-salesforce-0.1.6.2.tar.gz

Download URL django-salesforce-0.1.6.2.tar.gz
Size 26.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6a90c4bcb2cce2c876af4dc9bd5af1be9acd19918a5a4dc65def7b3384d9c366
BLAKE2b-256 checksum
How to use checksums
82847ce5afd43ead9ecb5db476ed4ac09cea9d8df5634c7cec15d282182a1ba4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

6.0

2 release files

5.2

2 release files

5.1

1 release file

5.0.2

2 release files

5.0.1

2 release files

5.0

1 release file

4.2

2 release files

4.1

1 release file

4.0

2 release files

3.2

1 release file

3.1

1 release file

1.1

1 release file

1.0

1 release file

0.9

2 release files

0.8.1

2 release files

0.8

2 release files

0.7.2

1 release file

0.7.0

1 release file

0.6.9

1 release file

0.6.3

1 release file

0.6.2.4

1 release file

0.6.2.3

1 release file

0.6.2.2

1 release file

0.6.2.1

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6

1 release file

0.5.1

1 release file

0.5

1 release file

0.4

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3

1 release file

0.2.9

1 release file

0.2.1.2

1 release file

0.2.1

1 release file

0.2.0.1

1 release file

0.2.0

1 release file

0.1.9

1 release file

0.1.8

1 release file

0.1.7

1 release file

0.1.6.4

1 release file

This release

0.1.6.2 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page