diff --git a/server/assignments/models.py b/server/assignments/models.py index 317d8726..e741f0b4 100644 --- a/server/assignments/models.py +++ b/server/assignments/models.py @@ -24,7 +24,8 @@ class Assignment(index.Indexed, TimeStampedModel): taskbase_id = models.CharField(max_length=255, null=True, blank=True) search_fields = [ - index.SearchField('title', partial_match=True) + index.SearchField('title', partial_match=True), + index.SearchField('assignment', partial_match=True), ] panels = [ diff --git a/server/assignments/wagtail_hooks.py b/server/assignments/wagtail_hooks.py index 705ac5d9..d73b9daf 100644 --- a/server/assignments/wagtail_hooks.py +++ b/server/assignments/wagtail_hooks.py @@ -5,7 +5,10 @@ from .models import Assignment class AssignmentAdmin(ModelAdmin): model = Assignment menu_label = 'Assignments' - list_display = ('title', 'module', 'pk',) + list_display = ('title', 'module', 'assignment') + search_fields = ('title', 'assignment') + list_filter = ('module', ) + menu_icon = 'form' modeladmin_register(AssignmentAdmin) diff --git a/server/surveys/models.py b/server/surveys/models.py index e0e5d6fc..454cc8d7 100644 --- a/server/surveys/models.py +++ b/server/surveys/models.py @@ -2,15 +2,21 @@ from django.contrib.auth import get_user_model from django.db import models from django.db.models import JSONField from wagtail.snippets.models import register_snippet +from wagtail.search import index @register_snippet -class Survey(models.Model): +class Survey(models.Model, index.Indexed): title = models.CharField(max_length=255) module = models.ForeignKey('books.Module', related_name='surveys', on_delete=models.CASCADE, null=True, blank=True) data = JSONField() + search_fields = [ + index.SearchField('title', partial_match=True), + index.SearchField('module__meta_title', partial_match=True), + ] + def __str__(self): return self.title diff --git a/server/surveys/wagtail_hooks.py b/server/surveys/wagtail_hooks.py new file mode 100644 index 00000000..a526f319 --- /dev/null +++ b/server/surveys/wagtail_hooks.py @@ -0,0 +1,15 @@ +from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register +from .models import Survey + + +class SurveyAdmin(ModelAdmin): + model = Survey + menu_label = 'Surveys' + list_display = ('title', 'module') + search_fields = ('title', 'module__meta_title') + list_filter = ('module', ) + menu_icon = 'help' + + +modeladmin_register(SurveyAdmin) +