add order to jobs
This commit is contained in:
@@ -6,9 +6,16 @@ from .models import Job, JobGroup, JobMember, Member
|
|||||||
|
|
||||||
class JobInlineForm(forms.ModelForm):
|
class JobInlineForm(forms.ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
fields = ["name"]
|
fields = [
|
||||||
|
"name",
|
||||||
|
"order",
|
||||||
|
]
|
||||||
model = Job
|
model = Job
|
||||||
|
|
||||||
|
labels = {
|
||||||
|
"order": "Reihenfolge",
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class ActiveMemberForm(forms.ModelForm):
|
class ActiveMemberForm(forms.ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|||||||
@@ -3,8 +3,10 @@ import logging
|
|||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
from django.core.validators import ValidationError, validate_email
|
from django.core.validators import ValidationError, validate_email
|
||||||
from django.db import models
|
from django.db import models
|
||||||
|
from django.db.models import F
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from django.utils.text import slugify
|
from django.utils.text import slugify
|
||||||
|
|
||||||
from easy_thumbnails.fields import ThumbnailerImageField
|
from easy_thumbnails.fields import ThumbnailerImageField
|
||||||
|
|
||||||
from .managers import (
|
from .managers import (
|
||||||
@@ -139,6 +141,8 @@ class Job(models.Model):
|
|||||||
shortterm = models.CharField(max_length=128, unique=True, blank=True)
|
shortterm = models.CharField(max_length=128, unique=True, blank=True)
|
||||||
slug = models.SlugField(unique=True, null=True, blank=True)
|
slug = models.SlugField(unique=True, null=True, blank=True)
|
||||||
|
|
||||||
|
order = models.PositiveSmallIntegerField(null=True, blank=True)
|
||||||
|
|
||||||
job_group = models.ForeignKey(
|
job_group = models.ForeignKey(
|
||||||
JobGroup,
|
JobGroup,
|
||||||
on_delete=models.CASCADE,
|
on_delete=models.CASCADE,
|
||||||
@@ -149,7 +153,7 @@ class Job(models.Model):
|
|||||||
objects = models.Manager()
|
objects = models.Manager()
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
ordering = ["name"]
|
ordering = (F("order").asc(nulls_last=True), "name")
|
||||||
|
|
||||||
verbose_name = "Tätigkeit"
|
verbose_name = "Tätigkeit"
|
||||||
verbose_name_plural = "Tätigkeiten"
|
verbose_name_plural = "Tätigkeiten"
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from django.db.models import F
|
||||||
from django.http import Http404
|
from django.http import Http404
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
|
|
||||||
@@ -25,7 +26,9 @@ def jobs(request, slug=None):
|
|||||||
logger.info("Wrong job '{}'".format(slug))
|
logger.info("Wrong job '{}'".format(slug))
|
||||||
raise Http404("wrong job")
|
raise Http404("wrong job")
|
||||||
|
|
||||||
job_members = JobMember.active_member.get_all(slug=slug)
|
job_members = JobMember.active_member.get_all(slug=slug).order_by(
|
||||||
|
F("job__order").asc(nulls_last=True), "job__name"
|
||||||
|
)
|
||||||
active_job_group = JobGroup.objects.filter(slug=slug).first()
|
active_job_group = JobGroup.objects.filter(slug=slug).first()
|
||||||
|
|
||||||
context = {
|
context = {
|
||||||
|
|||||||
Reference in New Issue
Block a user