Base model mixins clinicedc/edc projects.
Project description
edc-model
Base model, manager, field, form and admin classes for Edc.
All models in the Edc use BaseUuidModel
from edc_model.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 UrlModelMixin, DeviceModelMixin
Most models require an audit trail. If so, add the HistoricalRecord model manager.
from edc_model.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 Distributions
Built Distribution
File details
Details for the file edc_model-0.1.21-py3-none-any.whl
.
File metadata
- Download URL: edc_model-0.1.21-py3-none-any.whl
- Upload date:
- Size: 34.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0.post20200127 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11e7dea925838f402d546b4ea369b009362ef1229109fe861de382e1d27fae5d |
|
MD5 | ac05763c88e5b59b44d369eaa7b1283d |
|
BLAKE2b-256 | abb8542bfc8ca140ac667ac658033611ee6c4afe4427cf6ed57139a69ff8bd13 |