diff --git a/backups/models/backup.py b/backups/models/backup.py
index 4682c05..296b4ef 100644
--- a/backups/models/backup.py
+++ b/backups/models/backup.py
@@ -24,8 +24,7 @@ class Backup(models.Model):
null=True)
source_path = models.CharField(max_length=200, blank=True)
exec_time = models.TimeField()
- exec_day = models.ForeignKey(Weekday, models.SET_NULL, blank=True,
- null=True)
+ exec_days = models.ManyToManyField(Weekday)
target_device = models.ManyToManyField(Computer, through='TargetDevice')
def __str__(self):
diff --git a/backups/templates/backups/backup_details.html b/backups/templates/backups/backup_details.html
index b3663c2..f6c3661 100644
--- a/backups/templates/backups/backup_details.html
+++ b/backups/templates/backups/backup_details.html
@@ -27,7 +27,9 @@
Exec Day: |
- {{ backup.exec_day }} |
+
+ {% for backup in backup.exec_days.all %}{{ backup }} {% endfor %}
+ |
diff --git a/backups/tests/test_backup_detail_view.py b/backups/tests/test_backup_detail_view.py
index 0ac7e1e..49709c2 100644
--- a/backups/tests/test_backup_detail_view.py
+++ b/backups/tests/test_backup_detail_view.py
@@ -3,6 +3,7 @@ from mixer.backend.django import mixer
from django.test import Client
from core.tests import helper
+from core.models import Weekday
from customers.models import Customer
pytestmark = pytest.mark.django_db
@@ -72,3 +73,20 @@ def test_backup_detail_view_with_notification(create_admin_user):
response = client.get('/backup/' + str(backup.id) + '/')
assert (response.status_code == 200
and helper.in_content(response, notification))
+
+
+def test_backup_detail_view_with_day_relation(create_admin_user):
+ create_admin_user()
+ mixer.blend('computers.Computer', customer=mixer.SELECT)
+ monday = Weekday.objects.filter(name="Monday")
+ wednesday = Weekday.objects.filter(name="Wednesday")
+ backup = mixer.blend('backups.Backup',
+ computer=mixer.SELECT)
+ backup.exec_days.add(monday[0])
+ backup.exec_days.add(wednesday[0])
+ client = Client()
+ client.login(username="pharma-admin", password="password")
+ response = client.get('/backup/' + str(backup.id) + '/')
+ assert (response.status_code == 200
+ and helper.in_content(response, monday[0])
+ and helper.in_content(response, wednesday[0]))