Skip to main content

Base mixins and utilities for clinicedc/edc projects.

Project description

pypi travis coverage

edc-base

Base model, manager, field, form and admin classes for Edc.

All models in the Edc use BaseUuidModel

from edc_base.model_mixins import BaseUuidModel

class MyModel(BaseUuidModel):

    ....

The mixin:

  • sets the id fields to a UUIDField instead of an integer;

  • adds audit fields through BaseModel (user_created, user_modified, date_created, etc);

  • adds UrlMixin, DeviceModelMixin

Most models require an audit trail. If so, add the HistoricalRecord model manager.

from edc_base.model.models import HistoricalRecord

class MyModel(BaseUuidModel):

    ...
    history = HistoricalRecord()

HistoricalRecord is an almost identical version of simple_history.models.HistoricalRecord with the exception of two methods: get_extra_fields() and add_extra_methods(). Method get_extra_fields() is overridden to change the history_id primary key from an IntegerField to a UUIDField so that it can work with module django_collect_offline.

The audit trail models created by HistoricalRecord have a foreign key to auth.User. In order for the models to work with django_collect_offline specify the django_collect_offline User model in settings:

AUTH_USER_MODEL = 'django_collect_offline.User'

Notes

User created and modified fields behave as follows:

  • created is only set on pre-save add

  • modified is always updated

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

edc-base-0.2.29.macosx-10.13-x86_64.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

edc_base-0.2.29-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file edc-base-0.2.29.macosx-10.13-x86_64.tar.gz.

File metadata

  • Download URL: edc-base-0.2.29.macosx-10.13-x86_64.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for edc-base-0.2.29.macosx-10.13-x86_64.tar.gz
Algorithm Hash digest
SHA256 ac1f5657fae5e241d613db2a7853444c0c25808e6382a8ddaa7e3ff0b0621221
MD5 b1c05c7cc8e2beb70b5f074b47df46fd
BLAKE2b-256 ae98eebf06d1ed7cca7527ed5ba7713acd5af12f1ae93a087cec6f12dbdc8ec3

See more details on using hashes here.

File details

Details for the file edc_base-0.2.29-py3-none-any.whl.

File metadata

  • Download URL: edc_base-0.2.29-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for edc_base-0.2.29-py3-none-any.whl
Algorithm Hash digest
SHA256 1e02e1ba46e73cffb139dee3d315737ce62b97c50906f1c3d8d1179b1706a74c
MD5 9cf80065ad367825d43a5696533a0ea0
BLAKE2b-256 baa38decd5e8a52ae680468f4b1710532214470d2f6678bb4d27a489f9f1154d

See more details on using hashes here.

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