Base mixins and utilities for clinicedc/edc projects.
Project description
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
Release history Release notifications | RSS feed
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 edc-base-0.2.39.macosx-10.13-x86_64.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1fbd294fc8075c1c8320e3ad489afc7f0510da4b073a8d5d35b1b16b473094ed |
|
MD5 | 1ed28b644ecf1c7682394dfc47579110 |
|
BLAKE2b-256 | 957ea8203e9ae258830a8b0f191d7e6a2b1478c53a8cddb9863da5d9c0e985ff |
Hashes for edc_base-0.2.39-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 57642b5e71c155649d506caef7ada52a74af2c88614bd03b6ffa5f6a121a7e4b |
|
MD5 | 2068a67c6dde52cba5264ca1ee2fe382 |
|
BLAKE2b-256 | 785fba39057a7a4b9a23332b55f9c2916f5422ed762da97f26506c5a3cfadd5f |