Skip to content

Commit 6d3fc58

Browse files
committed
add deltas to the admin and improve verbose names
1 parent da12327 commit 6d3fc58

File tree

3 files changed

+61
-11
lines changed

3 files changed

+61
-11
lines changed

sde_collections/admin.py

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,14 @@
33
from django.contrib import admin, messages
44
from django.http import HttpResponse
55

6+
from sde_collections.models.delta_patterns import (
7+
DeltaDivisionPattern,
8+
DeltaTitlePattern,
9+
)
10+
611
from .models.candidate_url import CandidateURL, ResolvedTitle
712
from .models.collection import Collection, WorkflowHistory
8-
from .models.delta_url import CuratedUrl, DeltaUrl, DumpUrl
13+
from .models.delta_url import CuratedUrl, DeltaResolvedTitle, DeltaUrl, DumpUrl
914
from .models.pattern import DivisionPattern, IncludePattern, TitlePattern
1015
from .tasks import import_candidate_urls_from_api
1116

@@ -300,6 +305,31 @@ class DivisionPatternAdmin(admin.ModelAdmin):
300305
search_fields = ("match_pattern", "division")
301306

302307

308+
# deltas below
309+
class DeltaTitlePatternAdmin(admin.ModelAdmin):
310+
"""Admin View for DeltaTitlePattern"""
311+
312+
list_display = (
313+
"match_pattern",
314+
"title_pattern",
315+
"collection",
316+
"match_pattern_type",
317+
)
318+
list_filter = (
319+
"match_pattern_type",
320+
"collection",
321+
)
322+
323+
324+
class DeltaResolvedTitleAdmin(admin.ModelAdmin):
325+
list_display = ["title_pattern", "delta_url", "resolved_title", "created_at"]
326+
327+
328+
class DeltaDivisionPatternAdmin(admin.ModelAdmin):
329+
list_display = ("collection", "match_pattern", "division")
330+
search_fields = ("match_pattern", "division")
331+
332+
303333
class DumpUrlAdmin(admin.ModelAdmin):
304334
"""Admin View for DumpUrl"""
305335

@@ -327,6 +357,11 @@ class CuratedUrlAdmin(admin.ModelAdmin):
327357
admin.site.register(IncludePattern)
328358
admin.site.register(ResolvedTitle, ResolvedTitleAdmin)
329359
admin.site.register(DivisionPattern, DivisionPatternAdmin)
360+
361+
362+
admin.site.register(DeltaTitlePattern, DeltaTitlePatternAdmin)
363+
admin.site.register(DeltaResolvedTitle, DeltaResolvedTitleAdmin)
364+
admin.site.register(DeltaDivisionPattern, DeltaDivisionPatternAdmin)
330365
admin.site.register(DumpUrl, DumpUrlAdmin)
331366
admin.site.register(DeltaUrl, DeltaUrlAdmin)
332367
admin.site.register(CuratedUrl, CuratedUrlAdmin)

sde_collections/models/delta_patterns.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -127,17 +127,17 @@ class DeltaExcludePattern(BaseMatchPattern):
127127
# This pattern's functionality is handled by the `excluded` annotation in the manager.
128128

129129
class Meta:
130-
verbose_name = "Exclude Pattern"
131-
verbose_name_plural = "Exclude Patterns"
130+
verbose_name = "Delta Exclude Pattern"
131+
verbose_name_plural = "Delta Exclude Patterns"
132132
unique_together = ("collection", "match_pattern")
133133

134134

135135
class DeltaIncludePattern(BaseMatchPattern):
136136
# No additional logic needed for `apply`—using base class functionality.
137137

138138
class Meta:
139-
verbose_name = "Include Pattern"
140-
verbose_name_plural = "Include Patterns"
139+
verbose_name = "Delta Include Pattern"
140+
verbose_name_plural = "Delta Include Patterns"
141141
unique_together = ("collection", "match_pattern")
142142

143143

@@ -214,8 +214,8 @@ def unapply(self) -> None:
214214
self.curated_urls.clear()
215215

216216
class Meta:
217-
verbose_name = "Title Pattern"
218-
verbose_name_plural = "Title Patterns"
217+
verbose_name = "Delta Title Pattern"
218+
verbose_name_plural = "Delta Title Patterns"
219219
unique_together = ("collection", "match_pattern")
220220

221221

@@ -233,8 +233,8 @@ def unapply(self) -> None:
233233
self.curated_urls.clear()
234234

235235
class Meta:
236-
verbose_name = "Document Type Pattern"
237-
verbose_name_plural = "Document Type Patterns"
236+
verbose_name = "Delta Document Type Pattern"
237+
verbose_name_plural = "Delta Document Type Patterns"
238238
unique_together = ("collection", "match_pattern")
239239

240240

@@ -251,8 +251,8 @@ def unapply(self) -> None:
251251
self.delta_urls.update(division=None)
252252

253253
class Meta:
254-
verbose_name = "Division Pattern"
255-
verbose_name_plural = "Division Patterns"
254+
verbose_name = "Delta Division Pattern"
255+
verbose_name_plural = "Delta Division Patterns"
256256
unique_together = ("collection", "match_pattern")
257257

258258

sde_collections/models/delta_url.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,19 +96,34 @@ def __str__(self):
9696
class DumpUrl(BaseUrl):
9797
"""Stores the raw dump from the server before deltas are calculated."""
9898

99+
class Meta:
100+
verbose_name = "Dump Urls"
101+
verbose_name_plural = "Dump Urls"
102+
ordering = ["url"]
103+
99104

100105
class DeltaUrl(BaseUrl):
101106
"""Urls that are being curated. Only deltas are stored in this model."""
102107

103108
objects = DeltaUrlManager()
104109
delete = models.BooleanField(default=False)
105110

111+
class Meta:
112+
verbose_name = "Delta Urls"
113+
verbose_name_plural = "Delta Urls"
114+
ordering = ["url"]
115+
106116

107117
class CuratedUrl(BaseUrl):
108118
"""Urls that are curated and ready for production"""
109119

110120
objects = CuratedUrlManager()
111121

122+
class Meta:
123+
verbose_name = "Curated Urls"
124+
verbose_name_plural = "Curated Urls"
125+
ordering = ["url"]
126+
112127

113128
class DeltaResolvedTitleBase(models.Model):
114129
# TODO: need to understand this logic and whether we need to have thess match to CuratedUrls as well

0 commit comments

Comments
 (0)