Replacing format with f-strings

This commit is contained in:
Ilan
2020-02-17 16:59:12 +01:00
parent a1543c8d82
commit 0bca3cbd7a
7 changed files with 683 additions and 426 deletions
+73 -55
View File
@@ -35,9 +35,15 @@ class Task(models.Model):
@staticmethod
def get_result_group(group_id, failures=False):
if failures:
values = Task.objects.filter(group=group_id).values_list('result', flat=True)
values = Task.objects.filter(group=group_id).values_list(
"result", flat=True
)
else:
values = Task.objects.filter(group=group_id).exclude(success=False).values_list('result', flat=True)
values = (
Task.objects.filter(group=group_id)
.exclude(success=False)
.values_list("result", flat=True)
)
return decode_results(values)
def group_result(self, failures=False):
@@ -86,76 +92,88 @@ class Task(models.Model):
return truncatechars(self.result, 100)
def __unicode__(self):
return u'{}'.format(self.name or self.id)
return f"{self.name or self.id}"
class Meta:
app_label = 'django_q'
ordering = ['-stopped']
app_label = "django_q"
ordering = ["-stopped"]
class SuccessManager(models.Manager):
def get_queryset(self):
return super(SuccessManager, self).get_queryset().filter(
success=True)
return super(SuccessManager, self).get_queryset().filter(success=True)
class Success(Task):
objects = SuccessManager()
class Meta:
app_label = 'django_q'
verbose_name = _('Successful task')
verbose_name_plural = _('Successful tasks')
ordering = ['-stopped']
app_label = "django_q"
verbose_name = _("Successful task")
verbose_name_plural = _("Successful tasks")
ordering = ["-stopped"]
proxy = True
class FailureManager(models.Manager):
def get_queryset(self):
return super(FailureManager, self).get_queryset().filter(
success=False)
return super(FailureManager, self).get_queryset().filter(success=False)
class Failure(Task):
objects = FailureManager()
class Meta:
app_label = 'django_q'
verbose_name = _('Failed task')
verbose_name_plural = _('Failed tasks')
ordering = ['-stopped']
app_label = "django_q"
verbose_name = _("Failed task")
verbose_name_plural = _("Failed tasks")
ordering = ["-stopped"]
proxy = True
class Schedule(models.Model):
name = models.CharField(max_length=100, null=True, blank=True)
func = models.CharField(max_length=256, help_text='e.g. module.tasks.function')
hook = models.CharField(max_length=256, null=True, blank=True, help_text='e.g. module.tasks.result_function')
func = models.CharField(max_length=256, help_text="e.g. module.tasks.function")
hook = models.CharField(
max_length=256,
null=True,
blank=True,
help_text="e.g. module.tasks.result_function",
)
args = models.TextField(null=True, blank=True, help_text=_("e.g. 1, 2, 'John'"))
kwargs = models.TextField(null=True, blank=True, help_text=_("e.g. x=1, y=2, name='John'"))
ONCE = 'O'
MINUTES = 'I'
HOURLY = 'H'
DAILY = 'D'
WEEKLY = 'W'
MONTHLY = 'M'
QUARTERLY = 'Q'
YEARLY = 'Y'
kwargs = models.TextField(
null=True, blank=True, help_text=_("e.g. x=1, y=2, name='John'")
)
ONCE = "O"
MINUTES = "I"
HOURLY = "H"
DAILY = "D"
WEEKLY = "W"
MONTHLY = "M"
QUARTERLY = "Q"
YEARLY = "Y"
TYPE = (
(ONCE, _('Once')),
(MINUTES, _('Minutes')),
(HOURLY, _('Hourly')),
(DAILY, _('Daily')),
(WEEKLY, _('Weekly')),
(MONTHLY, _('Monthly')),
(QUARTERLY, _('Quarterly')),
(YEARLY, _('Yearly')),
(ONCE, _("Once")),
(MINUTES, _("Minutes")),
(HOURLY, _("Hourly")),
(DAILY, _("Daily")),
(WEEKLY, _("Weekly")),
(MONTHLY, _("Monthly")),
(QUARTERLY, _("Quarterly")),
(YEARLY, _("Yearly")),
)
schedule_type = models.CharField(
max_length=1, choices=TYPE, default=TYPE[0][0], verbose_name=_("Schedule Type")
)
minutes = models.PositiveSmallIntegerField(
null=True, blank=True, help_text=_("Number of minutes for the Minutes type")
)
repeats = models.IntegerField(
default=-1, verbose_name=_("Repeats"), help_text=_("n = n times, -1 = forever")
)
next_run = models.DateTimeField(
verbose_name=_("Next Run"), default=timezone.now, null=True
)
schedule_type = models.CharField(max_length=1, choices=TYPE, default=TYPE[0][0], verbose_name=_('Schedule Type'))
minutes = models.PositiveSmallIntegerField(null=True, blank=True,
help_text=_('Number of minutes for the Minutes type'))
repeats = models.IntegerField(default=-1, verbose_name=_('Repeats'), help_text=_('n = n times, -1 = forever'))
next_run = models.DateTimeField(verbose_name=_('Next Run'), default=timezone.now, null=True)
task = models.CharField(max_length=100, null=True, editable=False)
def success(self):
@@ -166,10 +184,10 @@ class Schedule(models.Model):
if self.task and Task.objects.filter(id=self.task):
task = Task.objects.get(id=self.task)
if task.success:
url = reverse('admin:django_q_success_change', args=(task.id,))
url = reverse("admin:django_q_success_change", args=(task.id,))
else:
url = reverse('admin:django_q_failure_change', args=(task.id,))
return format_html('<a href="{}">[{}]</a>'.format(url, task.name))
url = reverse("admin:django_q_failure_change", args=(task.id,))
return format_html(f'<a href="{url}">[{task.name}]</a>')
return None
def __unicode__(self):
@@ -179,10 +197,10 @@ class Schedule(models.Model):
last_run.allow_tags = True
class Meta:
app_label = 'django_q'
verbose_name = _('Scheduled task')
verbose_name_plural = _('Scheduled tasks')
ordering = ['next_run']
app_label = "django_q"
verbose_name = _("Scheduled task")
verbose_name_plural = _("Scheduled tasks")
ordering = ["next_run"]
class OrmQ(models.Model):
@@ -194,23 +212,23 @@ class OrmQ(models.Model):
return SignedPackage.loads(self.payload)
def func(self):
return self.task()['func']
return self.task()["func"]
def task_id(self):
return self.task()['id']
return self.task()["id"]
def name(self):
return self.task()['name']
return self.task()["name"]
class Meta:
app_label = 'django_q'
verbose_name = _('Queued task')
verbose_name_plural = _('Queued tasks')
app_label = "django_q"
verbose_name = _("Queued task")
verbose_name_plural = _("Queued tasks")
# Backwards compatibility for Django 1.7
def decode_results(values):
if get_version().split('.')[1] == '7':
if get_version().split(".")[1] == "7":
# decode values in 1.7
return [dbsafe_decode(v) for v in values]
return values