diff --git a/CHANGES b/CHANGES index e69de29..d31426c 100644 --- a/CHANGES +++ b/CHANGES @@ -0,0 +1,4 @@ +0.3.43 +------ +- change default order of model managers +- always get `site` FK from related visit model instance diff --git a/edc_crf/migrations/0003_alter_crfstatus_options.py b/edc_crf/migrations/0003_alter_crfstatus_options.py new file mode 100644 index 0000000..8429a35 --- /dev/null +++ b/edc_crf/migrations/0003_alter_crfstatus_options.py @@ -0,0 +1,30 @@ +# Generated by Django 4.2.1 on 2023-07-05 02:16 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ("edc_crf", "0002_auto_20200729_2310"), + ] + + operations = [ + migrations.AlterModelOptions( + name="crfstatus", + options={ + "default_manager_name": "objects", + "default_permissions": ( + "add", + "change", + "delete", + "view", + "export", + "import", + ), + "get_latest_by": "modified", + "ordering": ("-modified", "-created"), + "verbose_name": "CRF Status", + "verbose_name_plural": "CRF Status", + }, + ), + ] diff --git a/edc_crf/model_mixins/crf_model_mixin.py b/edc_crf/model_mixins/crf_model_mixin.py index f418ebb..c26aece 100644 --- a/edc_crf/model_mixins/crf_model_mixin.py +++ b/edc_crf/model_mixins/crf_model_mixin.py @@ -1,3 +1,4 @@ +from django.contrib.sites.models import Site from edc_model.models import HistoricalRecords from edc_sites.models import SiteModelMixin from edc_visit_tracking.managers import CrfCurrentSiteManager, CrfModelManager @@ -6,9 +7,15 @@ class CrfModelMixin(SiteModelMixin, CrfNoManagerModelMixin): - on_site = CrfCurrentSiteManager() objects = CrfModelManager() + on_site = CrfCurrentSiteManager() history = HistoricalRecords(inherit=True) + def get_site_on_create(self) -> Site: + """Expect site instance to be set from the related_visit + model instance. + """ + return self.related_visit.site + class Meta(CrfNoManagerModelMixin.Meta): abstract = True diff --git a/edc_crf/model_mixins/crf_with_action_model_mixin.py b/edc_crf/model_mixins/crf_with_action_model_mixin.py index 25f6902..d464da0 100644 --- a/edc_crf/model_mixins/crf_with_action_model_mixin.py +++ b/edc_crf/model_mixins/crf_with_action_model_mixin.py @@ -13,8 +13,8 @@ class CrfWithActionModelMixin( ): action_name = None - on_site = CrfCurrentSiteManager() objects = CrfModelManager() + on_site = CrfCurrentSiteManager() history = HistoricalRecords(inherit=True) class Meta(CrfNoManagerModelMixin.Meta):