Add KanbanTaskOrder to track order of task in list

This commit is contained in:
sosokker 2023-11-21 01:24:53 +07:00
parent da2a25c53e
commit 7429bd9bee
2 changed files with 39 additions and 0 deletions

View File

@ -0,0 +1,23 @@
# Generated by Django 4.2.6 on 2023-11-20 18:24
import django.contrib.postgres.fields
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('boards', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='KanbanTaskOrder',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('todo_order', django.contrib.postgres.fields.ArrayField(base_field=models.PositiveIntegerField(), blank=True, default=list, size=None)),
('list_board', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='boards.listboard')),
],
),
]

View File

@ -1,3 +1,4 @@
from django.contrib.postgres.fields import ArrayField
from django.db import models
from users.models import CustomUser
@ -18,6 +19,20 @@ class Board(models.Model):
return f"{self.name}"
class KanbanTaskOrder(models.Model):
"""
Model to store the order of Todo tasks in a Kanban board.
:param list_board: The list board that the order belongs to.
:param todo_order: ArrayField to store the order of Todo IDs.
"""
list_board = models.OneToOneField('ListBoard', on_delete=models.CASCADE)
todo_order = ArrayField(models.PositiveIntegerField(), blank=True, default=list)
def __str__(self):
return f"Order for {self.list_board}"
class ListBoard(models.Model):
"""
List inside a Kanban board.
@ -32,3 +47,4 @@ class ListBoard(models.Model):
def __str__(self) -> str:
return f"{self.name}"