Skip to main content

Patient registration module.

Project description

pypi travis coverage

edc-registration

The model RegisteredSubject is used by the Edc as the master subject registration table. Only one record may exist per individual. The table has space for PII so typically a RegisteredSubject instance is created or updated on completion of the informed consent. As always, PII in the Edc is encrypted at rest using django-crypto-field.

For the model and signal to be registered you need to add the AppConfig to your INSTALLED_APPS:

INSTALLED_APPS = (
    ....
    'edc_registration.apps.AppConfig',
    ....
)

UpdatesOrCreatesRegistrationModelMixin

RegisteredSubject is never edited directly by the user. Instead some other model with the needed attributes is used as a proxy. To have a model perform the task of creating or updating RegisteredSubject, declare it with the UpdatesOrCreatesRegistrationModelMixin.

For example, a model, SubjectEligibility or a screening model creates or updates RegisteredSubject without a subject identifier then a model such as the SubjectConsent in tests.models, also creates or updates a subject’s RegisteredSubject instance on save. For this to happen, both models are declared with the UpdatesOrCreatesRegistrationModelMixin:

class SubjectEligibility(UniqueSubjectIdentifierModelMixin,
                         UpdatesOrCreatesRegistrationModelMixin, BaseUuidModel):

    screening_identifier = models.CharField(
        max_length=36,
        null=True,
        unique=True)

    @property
    def registration_unique_field(self):
        return 'screening_identifier'

    def update_subject_identifier_on_save(self):
        """Overridden to not set the subject identifier on save.
        """
        if not self.subject_identifier:
            self.subject_identifier = self.subject_identifier_as_pk.hex
            self.subject_identifier_aka = self.subject_identifier_as_pk.hex
        return self.subject_identifier

class SubjectConsent(
    ConsentModelMixin, UpdatesOrCreatesRegistrationModelMixin,
    CreateAppointmentsMixin, IdentityFieldsMixin, ReviewFieldsMixin,
    PersonalFieldsMixin, CitizenFieldsMixin, VulnerabilityFieldsMixin,
    BaseUuidModel):

            @property
        def registration_unique_field(self):
            return 'screening_identifier'

        class Meta:
            app_label = 'my_app'

The property registration_unique_field returns a model attribute that is used to set a registration identifier on RegisteredSubject.

A subject’s RegisteredSubject instance is created and updated in a post_save signal. As mentioned, it is never edited directly by the user.

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

edc_registration-0.2.17-py3-none-any.whl (25.6 kB view details)

Uploaded Python 3

File details

Details for the file edc-registration-0.2.17.macosx-10.13-x86_64.tar.gz.

File metadata

  • Download URL: edc-registration-0.2.17.macosx-10.13-x86_64.tar.gz
  • Upload date:
  • Size: 31.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0

File hashes

Hashes for edc-registration-0.2.17.macosx-10.13-x86_64.tar.gz
Algorithm Hash digest
SHA256 2541d303c8b5d75cc9eba8fcbda8aac1b6b3cc098edb23997ee49c391fd9fd0a
MD5 74871cd5ebecc5877ec5af3c61b25e42
BLAKE2b-256 daa53ab33f73d6ea2c6b32c5f4d5954ddbc2f43e53cff66489b8947744f5c8ab

See more details on using hashes here.

File details

Details for the file edc_registration-0.2.17-py3-none-any.whl.

File metadata

  • Download URL: edc_registration-0.2.17-py3-none-any.whl
  • Upload date:
  • Size: 25.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0

File hashes

Hashes for edc_registration-0.2.17-py3-none-any.whl
Algorithm Hash digest
SHA256 9e83a45fb9911ee8356b1eda5025ddde0a29bb1fa171a0cf383234d03a8d6295
MD5 0976d1e4efba0de746c1e8b88da380a6
BLAKE2b-256 58dcc747432af4645560f358d8e2712aef39d8d7f361a742a972d7a42ec94a29

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