Skip to content

Commit

Permalink
Refactoring of views
Browse files Browse the repository at this point in the history
* adds unique together constraint for MonitoringResult
  • Loading branch information
jokiefer committed Feb 18, 2021
1 parent 8fd8bcb commit b214ce3
Show file tree
Hide file tree
Showing 4 changed files with 73 additions and 2 deletions.
32 changes: 32 additions & 0 deletions monitoring/migrations/0004_auto_20210218_1158.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Generated by Django 3.1.6 on 2021-02-18 10:58

from django.db import migrations, models
import uuid


class Migration(migrations.Migration):

dependencies = [
('service', '0002_auto_20210217_1348'),
('monitoring', '0003_auto_20210217_1527'),
]

operations = [
migrations.AlterModelOptions(
name='monitoringresult',
options={'ordering': ['-timestamp'], 'verbose_name': 'Monitoring result', 'verbose_name_plural': 'Monitoring results'},
),
migrations.AlterModelOptions(
name='monitoringrun',
options={'ordering': ['-end'], 'verbose_name': 'Monitoring run', 'verbose_name_plural': 'Monitoring runs'},
),
migrations.AlterField(
model_name='monitoringresult',
name='uuid',
field=models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False, verbose_name='Result'),
),
migrations.AlterUniqueTogether(
name='monitoringresult',
unique_together={('metadata', 'monitored_uri', 'monitoring_run')},
),
]
4 changes: 3 additions & 1 deletion monitoring/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ def get_absolute_url(self):

@property
def result_view_uri(self):
results = self.monitoring_results.all()
results = MonitoringResult.objects.filter(monitoring_run=self)
if results:
querystring = ""
for is_last_element, result in signal_last(results):
Expand Down Expand Up @@ -144,6 +144,8 @@ class MonitoringResult(models.Model):

class Meta:
ordering = ["-timestamp"]
# unique_together --> avoids from celery multiple checks bug
unique_together = ("metadata", "monitored_uri", "monitoring_run")
verbose_name = _('Monitoring result')
verbose_name_plural = _('Monitoring results')

Expand Down
5 changes: 4 additions & 1 deletion monitoring/tables.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,16 @@ def render_results(self, record):
class MonitoringResultTable(tables.Table):
class Meta:
model = MonitoringResult
fields = ('uuid', 'metadata', 'timestamp', 'available', 'status_code', 'monitored_uri')
fields = ('uuid', 'monitoring_run', 'metadata', 'timestamp', 'available', 'status_code', 'monitored_uri')
template_name = "skeletons/django_tables2_bootstrap4_custom.html"
prefix = 'monitoring-result-table'

def render_uuid(self, record, value):
return Link(url=record.get_absolute_url(), content=value).render(safe=True)

def render_monitoring_run(self, value):
return Link(url=value.get_absolute_url(), content=value).render(safe=True)

def render_metadata(self, value):
return Link(url=value.detail_view_uri, content=value).render(safe=True)

Expand Down
34 changes: 34 additions & 0 deletions structure/migrations/0002_auto_20210218_1158.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Generated by Django 3.1.6 on 2021-02-18 10:58

from django.db import migrations
import django.db.models.expressions


class Migration(migrations.Migration):

dependencies = [
('structure', '0001_initial'),
]

operations = [
migrations.AlterModelOptions(
name='groupinvitationrequest',
options={'verbose_name': 'Pending group invitation', 'verbose_name_plural': 'Pending group invitations'},
),
migrations.AlterModelOptions(
name='mrmapgroup',
options={'ordering': [django.db.models.expressions.Case(django.db.models.expressions.When(name='Public', then=0)), 'name'], 'verbose_name': 'Group', 'verbose_name_plural': 'Groups'},
),
migrations.AlterModelOptions(
name='mrmapuser',
options={'verbose_name': 'User', 'verbose_name_plural': 'Users'},
),
migrations.AlterModelOptions(
name='organization',
options={'verbose_name': 'Organization', 'verbose_name_plural': 'Organizations'},
),
migrations.AlterModelOptions(
name='publishrequest',
options={'verbose_name': 'Pending publish request', 'verbose_name_plural': 'Pending publish requests'},
),
]

0 comments on commit b214ce3

Please sign in to comment.