Skip to content

Commit 182c44e

Browse files
committed
Adding reversion.register() decorators to 72 important models
1 parent a48532e commit 182c44e

File tree

6 files changed

+81
-0
lines changed

6 files changed

+81
-0
lines changed

api/models.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import reversion
12
from django.utils.translation import ugettext_lazy as _
23
# from django.db import models
34
from django.contrib.gis.db import models
@@ -132,6 +133,7 @@ class Labels:
132133
# update api_country set record_type=3 where name like '%egion%';
133134

134135

136+
@reversion.register()
135137
class Country(models.Model):
136138
""" A country """
137139

@@ -287,6 +289,7 @@ class Meta:
287289
def __str__(self):
288290
return f'{self.admin1} - {self.name}'
289291

292+
290293
class CountryGeoms(models.Model):
291294
""" Admin0 geometries """
292295
geom = models.MultiPolygonField(srid=4326, blank=True, null=True)
@@ -298,11 +301,13 @@ class DistrictGeoms(models.Model):
298301
geom = models.MultiPolygonField(srid=4326, blank=True, null=True)
299302
district = models.OneToOneField(District, verbose_name=_('district'), on_delete=models.DO_NOTHING, primary_key=True)
300303

304+
301305
class Admin2Geoms(models.Model):
302306
""" Admin2 geometries """
303307
geom = models.MultiPolygonField(srid=4326, blank=True, null=True)
304308
admin2 = models.OneToOneField(Admin2, verbose_name=_('admin2'), on_delete=models.DO_NOTHING, primary_key=True)
305309

310+
306311
class VisibilityChoices(IntEnum):
307312
MEMBERSHIP = 1
308313
IFRC = 2
@@ -333,6 +338,7 @@ class VisibilityCharChoices():
333338

334339
# Common parent class for key figures.
335340
# Country/region variants inherit from this.
341+
@reversion.register()
336342
class AdminKeyFigure(models.Model):
337343
figure = models.CharField(verbose_name=_('figure'), max_length=100)
338344
deck = models.CharField(verbose_name=_('deck'), max_length=50)
@@ -390,6 +396,7 @@ class Labels:
390396
TAB_3 = _('Tab 3')
391397

392398

399+
@reversion.register()
393400
class RegionSnippet(models.Model):
394401
region = models.ForeignKey(Region, verbose_name=_('region'), related_name='snippets', on_delete=models.CASCADE)
395402
snippet = HTMLField(verbose_name=_('snippet'), null=True, blank=True)
@@ -406,6 +413,7 @@ def __str__(self):
406413
return self.snippet
407414

408415

416+
@reversion.register()
409417
class RegionEmergencySnippet(models.Model):
410418
region = models.ForeignKey(Region, verbose_name=_('region'), related_name='emergency_snippets', on_delete=models.CASCADE)
411419
title = models.CharField(max_length=255, blank=True)
@@ -422,6 +430,7 @@ def __str__(self):
422430
return self.snippet
423431

424432

433+
@reversion.register()
425434
class RegionPreparednessSnippet(models.Model):
426435
region = models.ForeignKey(Region, verbose_name=_('region'), related_name='preparedness_snippets', on_delete=models.CASCADE)
427436
title = models.CharField(max_length=255, blank=True)
@@ -438,6 +447,7 @@ def __str__(self):
438447
return self.snippet
439448

440449

450+
@reversion.register()
441451
class RegionProfileSnippet(models.Model):
442452
region = models.ForeignKey(Region, verbose_name=_('region'), related_name='profile_snippets', on_delete=models.CASCADE)
443453
title = models.CharField(max_length=255, blank=True)
@@ -463,6 +473,7 @@ def __str__(self):
463473
# return self.title
464474

465475

476+
@reversion.register()
466477
class CountrySnippet(models.Model):
467478
country = models.ForeignKey(Country, verbose_name=_('country'), related_name='snippets', on_delete=models.CASCADE)
468479
snippet = HTMLField(verbose_name=_('snippet'), null=True, blank=True)
@@ -479,6 +490,7 @@ def __str__(self):
479490
return self.snippet
480491

481492

493+
@reversion.register()
482494
class AdminLink(models.Model):
483495
title = models.CharField(verbose_name=_('title'), max_length=100)
484496
url = models.URLField(verbose_name=_('url'), max_length=300)
@@ -505,6 +517,7 @@ class Meta:
505517
verbose_name_plural = _('country links')
506518

507519

520+
@reversion.register()
508521
class AdminContact(models.Model):
509522
ctype = models.CharField(verbose_name=_('type'), max_length=100, blank=True)
510523
name = models.CharField(verbose_name=_('name'), max_length=100)
@@ -546,6 +559,7 @@ class Labels:
546559
RED = _('Red')
547560

548561

562+
@reversion.register()
549563
class Event(models.Model):
550564
""" A disaster, which could cover multiple countries """
551565

@@ -681,6 +695,7 @@ def __str__(self):
681695
return self.name
682696

683697

698+
@reversion.register()
684699
class EventFeaturedDocument(models.Model):
685700
event = models.ForeignKey(
686701
Event,
@@ -700,6 +715,7 @@ class EventFeaturedDocument(models.Model):
700715
)
701716

702717

718+
@reversion.register()
703719
class EventLink(models.Model):
704720
"""
705721
Used in emergency overview.
@@ -716,6 +732,7 @@ class EventLink(models.Model):
716732
url = models.URLField(verbose_name=_('url'))
717733

718734

735+
@reversion.register()
719736
class EventContact(models.Model):
720737
""" Contact for event """
721738

@@ -734,6 +751,7 @@ def __str__(self):
734751
return '%s: %s' % (self.name, self.title)
735752

736753

754+
@reversion.register()
737755
class KeyFigure(models.Model):
738756
event = models.ForeignKey(Event, verbose_name=_('event'), related_name='key_figures', on_delete=models.CASCADE)
739757
number = models.CharField(verbose_name=_('number'), max_length=100, help_text=_('key figure metric'))
@@ -750,6 +768,7 @@ def snippet_image_path(instance, filename):
750768
return 'emergencies/%s/%s' % (instance.event.id, filename)
751769

752770

771+
@reversion.register()
753772
class Snippet(models.Model):
754773
""" Snippet of text """
755774
snippet = HTMLField(verbose_name=_('snippet'), null=True, blank=True)
@@ -788,6 +807,7 @@ def sitrep_document_path(instance, filename):
788807
return 'sitreps/%s/%s' % (instance.event.id, filename)
789808

790809

810+
@reversion.register()
791811
class SituationReport(models.Model):
792812
created_at = models.DateTimeField(verbose_name=_('created at'), auto_now_add=True)
793813
name = models.CharField(verbose_name=_('name'), max_length=100)
@@ -869,6 +889,7 @@ class Labels:
869889
ARCHIVED = _('Archived')
870890

871891

892+
@reversion.register()
872893
class Appeal(models.Model):
873894
""" An appeal for a disaster and country, containing documents """
874895

@@ -1025,6 +1046,7 @@ def __str__(self):
10251046
return self.aid
10261047

10271048

1049+
@reversion.register()
10281050
class AppealDocument(models.Model):
10291051
# Don't set `auto_now_add` so we can modify it on save
10301052
created_at = models.DateTimeField(verbose_name=_('created at'))
@@ -1048,6 +1070,7 @@ def __str__(self):
10481070
return '%s - %s' % (self.appeal, self.name)
10491071

10501072

1073+
@reversion.register()
10511074
class AppealFilter(models.Model):
10521075
name = models.CharField(verbose_name=_('name'), max_length=100)
10531076
value = models.CharField(verbose_name=_('value'), max_length=1000)
@@ -1109,6 +1132,7 @@ class Labels:
11091132
OTHER = _('OTHER')
11101133

11111134

1135+
@reversion.register()
11121136
class ExternalPartner(models.Model):
11131137
''' Dropdown items for COVID Field Reports '''
11141138

@@ -1177,6 +1201,7 @@ def __str__(self):
11771201
return self.user.get_username()
11781202

11791203

1204+
@reversion.register()
11801205
class FieldReport(models.Model):
11811206
""" A field report for a disaster and country, containing documents """
11821207

@@ -1412,6 +1437,7 @@ def __str__(self):
14121437
return '%s - %s' % (self.id, summary)
14131438

14141439

1440+
@reversion.register()
14151441
class FieldReportContact(models.Model):
14161442
""" Contact for field report """
14171443

@@ -1474,6 +1500,7 @@ class ActionCategory:
14741500
)
14751501

14761502

1503+
@reversion.register()
14771504
class Action(models.Model):
14781505
""" Action taken """
14791506
name = models.CharField(verbose_name=_('name'), max_length=400)
@@ -1499,6 +1526,7 @@ def __str__(self):
14991526
return self.name
15001527

15011528

1529+
@reversion.register()
15021530
class ActionsTaken(models.Model):
15031531
""" All the actions taken by an organization """
15041532

@@ -1532,6 +1560,7 @@ def __str__(self):
15321560
return self.name
15331561

15341562

1563+
@reversion.register()
15351564
class Source(models.Model):
15361565
""" Source of information """
15371566
stype = models.ForeignKey(SourceType, verbose_name=_('type'), on_delete=models.PROTECT)
@@ -1548,6 +1577,7 @@ def __str__(self):
15481577
return '%s: %s' % (self.stype.name, self.spec)
15491578

15501579

1580+
@reversion.register()
15511581
class Profile(models.Model):
15521582
""" Holds location and identifying information about users """
15531583
NTLS = 'NTLS'
@@ -1593,6 +1623,7 @@ def __str__(self):
15931623
return self.user.username
15941624

15951625

1626+
@reversion.register()
15961627
class EmergencyOperationsBase(models.Model):
15971628
"""Common fields used by EmergencyOperations* Tables"""
15981629
is_validated = models.BooleanField(
@@ -1901,6 +1932,7 @@ def __str__(self):
19011932
return self.raw_file_name
19021933

19031934

1935+
@reversion.register()
19041936
class MainContact(models.Model):
19051937
''' Contacts on the Resources page '''
19061938
extent = models.CharField(verbose_name=_('extent'), max_length=300)
@@ -1930,6 +1962,7 @@ class Labels:
19301962
ERRONEOUS = _('Erroneous')
19311963

19321964

1965+
@reversion.register()
19331966
class CronJob(models.Model):
19341967
""" CronJob log row about jobs results """
19351968
name = models.CharField(verbose_name=_('name'), max_length=100, default='')

deployments/models.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import reversion
12
from datetime import datetime
23
from enumfields import EnumIntegerField
34
from enumfields import IntEnum
@@ -68,6 +69,7 @@ class Labels:
6869
BASECAMP_L = _('Base Camp – L')
6970

7071

72+
@reversion.register()
7173
class ERUOwner(models.Model):
7274
""" A resource that may or may not be deployed """
7375

@@ -88,6 +90,7 @@ def __str__(self):
8890
return self.national_society_country.name
8991

9092

93+
@reversion.register()
9194
class ERU(models.Model):
9295
""" A resource that can be deployed """
9396
type = EnumIntegerField(ERUType, verbose_name=_('type'), default=0)
@@ -123,6 +126,7 @@ def __str__(self):
123126
return str(self.type.label)
124127

125128

129+
@reversion.register()
126130
class PersonnelDeployment(models.Model):
127131
country_deployed_to = models.ForeignKey(Country, verbose_name=_('country deployed to'), on_delete=models.CASCADE)
128132
region_deployed_to = models.ForeignKey(Region, verbose_name=_('region deployed to'), null=True, on_delete=models.SET_NULL)
@@ -156,6 +160,7 @@ def __str__(self):
156160
return '%s, %s' % (self.country_deployed_to, self.region_deployed_to)
157161

158162

163+
@reversion.register()
159164
class MolnixTag(models.Model):
160165
'''
161166
We store tags from molnix in its own model, to make m2m relations
@@ -172,6 +177,7 @@ def __str__(self):
172177
return self.name
173178

174179

180+
@reversion.register()
175181
class DeployedPerson(models.Model):
176182
start_date = models.DateTimeField(verbose_name=_('start date'), null=True)
177183
end_date = models.DateTimeField(verbose_name=_('end date'), null=True)
@@ -246,6 +252,7 @@ def get_tags_for_category(self, molnix_category):
246252
names = [tag['name'] for tag in tags]
247253
return ", ".join(names)
248254

255+
@reversion.register()
249256
class PartnerSocietyActivities(models.Model):
250257
activity = models.CharField(verbose_name=_('activity'), max_length=50)
251258

@@ -369,6 +376,7 @@ class Labels:
369376
EMERGENCY_OPERATION = _('Emergency Operation')
370377

371378

379+
@reversion.register()
372380
class RegionalProject(models.Model):
373381
name = models.CharField(verbose_name=_('name'), max_length=100)
374382
created_at = models.DateTimeField(verbose_name=_('created at'), auto_now_add=True)
@@ -383,6 +391,7 @@ def __str__(self):
383391

384392

385393
# 3W
394+
@reversion.register()
386395
class Project(models.Model):
387396
modified_at = models.DateTimeField(verbose_name=_('modified at'), auto_now=True)
388397
modified_by = models.ForeignKey(
@@ -486,6 +495,7 @@ def get_for(user, queryset=None):
486495
)
487496

488497

498+
@reversion.register()
489499
class ProjectImport(models.Model):
490500
"""
491501
Track Project Imports (For Django Admin Panel)
@@ -517,6 +527,7 @@ def __str__(self):
517527

518528

519529
# -------------- Emergency 3W [Start]
530+
@reversion.register()
520531
class EmergencyProject(models.Model):
521532
class ActivityLead(TextChoices):
522533
NATIONAL_SOCIETY = 'national_society', _('National Society')
@@ -624,6 +635,7 @@ def __str__(self):
624635
return self.title
625636

626637

638+
@reversion.register()
627639
class EmergencyProjectActivitySector(models.Model):
628640
title = models.CharField(max_length=255, verbose_name=_('title'))
629641
order = models.SmallIntegerField(default=0)
@@ -632,6 +644,7 @@ def __str__(self):
632644
return self.title
633645

634646

647+
@reversion.register()
635648
class EmergencyProjectActivityAction(models.Model):
636649
sector = models.ForeignKey(
637650
EmergencyProjectActivitySector,
@@ -648,6 +661,7 @@ def __str__(self):
648661
return self.title
649662

650663

664+
@reversion.register()
651665
class EmergencyProjectActivityActionSupply(models.Model):
652666
action = models.ForeignKey(
653667
EmergencyProjectActivityAction,
@@ -662,6 +676,7 @@ def __str__(self):
662676
return self.title
663677

664678

679+
@reversion.register()
665680
class EmergencyProjectActivityLocation(models.Model):
666681
# Location Data
667682
latitude = models.FloatField(verbose_name=_('latitude'))
@@ -672,6 +687,7 @@ def __str__(self):
672687
return f'{self.latitude} - {self.longitude}'
673688

674689

690+
@reversion.register()
675691
class EmergencyProjectActivity(models.Model):
676692
class PeopleHouseholds(TextChoices):
677693
PEOPLE = 'people', _('People'),
@@ -785,6 +801,7 @@ class PeopleHouseholds(TextChoices):
785801

786802

787803
# -------------- Emergency 3W [END]
804+
@reversion.register()
788805
class ERUReadiness(models.Model):
789806
""" ERU Readiness concerning personnel and equipment """
790807
national_society = models.ForeignKey(

0 commit comments

Comments
 (0)