From 47c0f6d05412424419734fc22d8cd035529d77c8 Mon Sep 17 00:00:00 2001 From: sosokker Date: Mon, 20 Nov 2023 03:28:30 +0700 Subject: [PATCH] Register board and task to admin --- backend/boards/admin.py | 10 ++++++- backend/tasks/admin.py | 28 ++++++++++++++++++- ...lter_recurrencetask_list_board_and_more.py | 25 +++++++++++++++++ ...lter_recurrencetask_list_board_and_more.py | 25 +++++++++++++++++ backend/tasks/models.py | 4 +-- 5 files changed, 88 insertions(+), 4 deletions(-) create mode 100644 backend/tasks/migrations/0016_alter_recurrencetask_list_board_and_more.py create mode 100644 backend/tasks/migrations/0017_alter_recurrencetask_list_board_and_more.py diff --git a/backend/boards/admin.py b/backend/boards/admin.py index 8c38f3f..c22f595 100644 --- a/backend/boards/admin.py +++ b/backend/boards/admin.py @@ -1,3 +1,11 @@ from django.contrib import admin +from .models import Board, ListBoard -# Register your models here. +@admin.register(Board) +class BoardAdmin(admin.ModelAdmin): + list_display = ['name', 'user'] + +@admin.register(ListBoard) +class ListBoardAdmin(admin.ModelAdmin): + list_display = ['name', 'position', 'board'] + list_filter = ['board', 'position'] \ No newline at end of file diff --git a/backend/tasks/admin.py b/backend/tasks/admin.py index 8c38f3f..5c5bbb3 100644 --- a/backend/tasks/admin.py +++ b/backend/tasks/admin.py @@ -1,3 +1,29 @@ from django.contrib import admin +from .models import Tag, Todo, RecurrenceTask, RecurrencePattern, Habit, Subtask -# Register your models here. +@admin.register(Tag) +class TagAdmin(admin.ModelAdmin): + list_display = ['name'] + +@admin.register(Todo) +class TodoAdmin(admin.ModelAdmin): + list_display = ['title', 'list_board', 'is_active', 'priority'] + list_filter = ['list_board', 'is_active', 'priority'] + +@admin.register(RecurrenceTask) +class RecurrenceTaskAdmin(admin.ModelAdmin): + list_display = ['title', 'list_board', 'rrule', 'is_active'] + list_filter = ['list_board', 'rrule', 'is_active'] + +@admin.register(RecurrencePattern) +class RecurrencePatternAdmin(admin.ModelAdmin): + list_display = ['recurrence_task', 'recurring_type', 'day_of_week', 'week_of_month', 'day_of_month', 'month_of_year'] + +@admin.register(Habit) +class HabitAdmin(admin.ModelAdmin): + list_display = ['title', 'streak', 'current_count'] + +@admin.register(Subtask) +class SubtaskAdmin(admin.ModelAdmin): + list_display = ['parent_task', 'description', 'completed'] + list_filter = ['parent_task', 'completed'] diff --git a/backend/tasks/migrations/0016_alter_recurrencetask_list_board_and_more.py b/backend/tasks/migrations/0016_alter_recurrencetask_list_board_and_more.py new file mode 100644 index 0000000..b0edc6e --- /dev/null +++ b/backend/tasks/migrations/0016_alter_recurrencetask_list_board_and_more.py @@ -0,0 +1,25 @@ +# Generated by Django 4.2.6 on 2023-11-19 20:24 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('boards', '0001_initial'), + ('tasks', '0015_recurrencepattern_remove_transaction_user_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='recurrencetask', + name='list_board', + field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='boards.listboard'), + ), + migrations.AlterField( + model_name='todo', + name='list_board', + field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='boards.listboard'), + ), + ] diff --git a/backend/tasks/migrations/0017_alter_recurrencetask_list_board_and_more.py b/backend/tasks/migrations/0017_alter_recurrencetask_list_board_and_more.py new file mode 100644 index 0000000..dee431c --- /dev/null +++ b/backend/tasks/migrations/0017_alter_recurrencetask_list_board_and_more.py @@ -0,0 +1,25 @@ +# Generated by Django 4.2.6 on 2023-11-19 20:27 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('boards', '0001_initial'), + ('tasks', '0016_alter_recurrencetask_list_board_and_more'), + ] + + operations = [ + migrations.AlterField( + model_name='recurrencetask', + name='list_board', + field=models.ForeignKey(default=1, null=True, on_delete=django.db.models.deletion.CASCADE, to='boards.listboard'), + ), + migrations.AlterField( + model_name='todo', + name='list_board', + field=models.ForeignKey(default=1, null=True, on_delete=django.db.models.deletion.CASCADE, to='boards.listboard'), + ), + ] diff --git a/backend/tasks/models.py b/backend/tasks/models.py index 87dd3be..c67df03 100644 --- a/backend/tasks/models.py +++ b/backend/tasks/models.py @@ -56,7 +56,7 @@ class Todo(Task): NOT_IMPORTANT_URGENT = 3, 'Not Important & Urgent' NOT_IMPORTANT_NOT_URGENT = 4, 'Not Important & Not Urgent' - list_board = models.ForeignKey(ListBoard, on_delete=models.CASCADE, null=True) + list_board = models.ForeignKey(ListBoard, on_delete=models.CASCADE, null=True, default=1) is_active = models.BooleanField(default=True) is_full_day_event = models.BooleanField(default=False) start_event = models.DateTimeField(null=True) @@ -69,7 +69,7 @@ class Todo(Task): return self.title class RecurrenceTask(Task): - list_board = models.ForeignKey(ListBoard, on_delete=models.CASCADE, null=True) + list_board = models.ForeignKey(ListBoard, on_delete=models.CASCADE, null=True, default=1) rrule = models.CharField(max_length=255, null=True, blank=True) is_active = models.BooleanField(default=True) is_full_day_event = models.BooleanField(default=False)