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