Refactor QuestionTable to inherit Meta options from SelectionTable for consistency

This commit is contained in:
Ross
2025-11-01 21:42:33 +00:00
parent 0e7307de18
commit 206f0afd32
2 changed files with 21 additions and 40 deletions
+20 -39
View File
@@ -174,9 +174,8 @@ class CaseTable(SelectionTable):
"atlas:case_delete", text="Delete", args=[A("pk")], orderable=False
)
#selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
class Meta:
class Meta(SelectionTable.Meta):
model = Case
template_name = "django_tables2/bootstrap4.html"
fields = (
@@ -190,7 +189,6 @@ class CaseTable(SelectionTable):
)
sequence = ("view", )
order_by = "-created_date"
attrs = {"class": "table"}
@@ -205,7 +203,7 @@ class PopupLinkColumn(tables.Column):
return obj.get_thumbnail()[0]
class SeriesTable(tables.Table):
class SeriesTable(SelectionTable):
edit = tables.LinkColumn(
"atlas:series_update", text="Edit", args=[A("pk")], orderable=False
)
@@ -219,13 +217,12 @@ class SeriesTable(tables.Table):
delete = tables.LinkColumn(
"atlas:series_delete", text="Delete", args=[A("pk")], orderable=False
)
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
case = tables.ManyToManyColumn(verbose_name="Cases")
findings = tables.ManyToManyColumn(verbose_name="Findings")
structures = tables.ManyToManyColumn(verbose_name="Structures")
class Meta:
class Meta(SelectionTable.Meta):
model = Series
template_name = "django_tables2/bootstrap4.html"
fields = (
@@ -240,7 +237,6 @@ class SeriesTable(tables.Table):
)
sequence = ("view", "popup", "images", "case")
order_by = "-created_date"
attrs = {"class": "table row-selector"}
def __init__(self, data=None, *args, **kwargs):
@@ -259,7 +255,7 @@ class SeriesTable(tables.Table):
)
class ConditionTable(tables.Table):
class ConditionTable(SelectionTable):
name = tables.Column(
linkify=("atlas:condition_detail", {"pk": tables.A("pk")}),
verbose_name="Condition",
@@ -271,18 +267,16 @@ class ConditionTable(tables.Table):
delete = tables.LinkColumn(
"atlas:condition_delete", text="Delete", args=[A("pk")], orderable=False
)
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
# synonym = tables.ManyToManyColumn(verbose_name="Synonyms")
synonym = tables.Column(empty_values=())
parent = tables.ManyToManyColumn(verbose_name="Parents")
class Meta:
class Meta(SelectionTable.Meta):
model = Condition
template_name = "django_tables2/bootstrap4.html"
fields = ("primary", "subspecialty", "rcr_curriculum_map", "rcr_curriculum")
sequence = ("name",)
attrs = {"class": "table row-selector"}
def __init__(self, data=None, *args, **kwargs):
@@ -299,7 +293,7 @@ class ConditionTable(tables.Table):
return f"{record.get_synonym_link()}"
class FindingTable(tables.Table):
class FindingTable(SelectionTable):
name = tables.Column(
linkify=("atlas:finding_detail", {"pk": tables.A("pk")}), verbose_name="Finding"
)
@@ -309,25 +303,23 @@ class FindingTable(tables.Table):
delete = tables.LinkColumn(
"atlas:finding_delete", text="Delete", args=[A("pk")], orderable=False
)
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
# synonym = tables.ManyToManyColumn(verbose_name="Synonyms")
synonym = tables.Column(empty_values=())
parent = tables.ManyToManyColumn(verbose_name="Parents")
class Meta:
class Meta(SelectionTable.Meta):
model = Finding
template_name = "django_tables2/bootstrap4.html"
fields = ("name", "primary")
sequence = ("name",)
attrs = {"class": "table row-selector"}
def render_synonym(self, value, record):
return format_html(record.get_synonym_link())
class StructureTable(tables.Table):
class StructureTable(SelectionTable):
name = tables.Column(
linkify=("atlas:structure_detail", {"pk": tables.A("pk")}),
verbose_name="Structure",
@@ -338,25 +330,23 @@ class StructureTable(tables.Table):
delete = tables.LinkColumn(
"atlas:structure_delete", text="Delete", args=[A("pk")], orderable=False
)
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
# synonym = tables.ManyToManyColumn(verbose_name="Synonyms")
synonym = tables.Column(empty_values=())
parent = tables.ManyToManyColumn(verbose_name="Parents")
class Meta:
class Meta(SelectionTable.Meta):
model = Structure
template_name = "django_tables2/bootstrap4.html"
fields = ("name", "primary")
sequence = ("name",)
attrs = {"class": "table row-selector"}
def render_synonym(self, value, record):
return format_html(record.get_synonym_link())
class PresentationTable(tables.Table):
class PresentationTable(SelectionTable):
name = tables.Column(
linkify=("atlas:presentation_detail", {"pk": tables.A("pk")}),
verbose_name="Presentation",
@@ -368,20 +358,19 @@ class PresentationTable(tables.Table):
# delete = tables.LinkColumn(
# "atlas:presentation_delete", text="Delete", args=[A("pk")], orderable=False
# )
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
subspecialty = tables.ManyToManyColumn(verbose_name="Subspecialty")
class Meta:
class Meta(SelectionTable.Meta):
model = Presentation
template_name = "django_tables2/bootstrap4.html"
fields = ("name",)
sequence = ("name",)
attrs = {"class": "table row-selector"}
class PathologicalProcessTable(tables.Table):
class PathologicalProcessTable(SelectionTable):
name = tables.Column(
linkify=("atlas:pathological_process_detail", {"pk": tables.A("pk")}),
verbose_name="PathologicalProcess",
@@ -393,18 +382,15 @@ class PathologicalProcessTable(tables.Table):
# delete = tables.LinkColumn(
# "atlas:pathological_process_delete", text="Delete", args=[A("pk")], orderable=False
# )
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
class Meta:
class Meta(SelectionTable.Meta):
model = PathologicalProcess
template_name = "django_tables2/bootstrap4.html"
fields = ("name",)
sequence = ("name",)
attrs = {"class": "table row-selector"}
class SubspecialtyTable(tables.Table):
class SubspecialtyTable(SelectionTable):
name = tables.Column(
linkify=("atlas:subspecialty_detail", {"pk": tables.A("pk")}),
verbose_name="Subspecialty",
@@ -416,21 +402,19 @@ class SubspecialtyTable(tables.Table):
# delete = tables.LinkColumn(
# "atlas:subspecialty_delete", text="Delete", args=[A("pk")], orderable=False
# )
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
class Meta:
class Meta(SelectionTable.Meta):
model = Subspecialty
template_name = "django_tables2/bootstrap4.html"
fields = ()
sequence = ("name",)
attrs = {"class": "table row-selector"}
def render_synonym(self, value, record):
return format_html(record.get_synonym_link())
return f"{record.get_synonym_link()}"
class CaseCollectionTable(tables.Table):
class CaseCollectionTable(SelectionTable):
edit = tables.LinkColumn(
"atlas:exam_update", text="Edit", args=[A("pk")], orderable=False
)
@@ -446,9 +430,8 @@ class CaseCollectionTable(tables.Table):
#differential = tables.ManyToManyColumn(verbose_name="Differential")
selection = tables.CheckBoxColumn(accessor="pk", orderable=False)
class Meta:
class Meta(SelectionTable.Meta):
model = CaseCollection
template_name = "django_tables2/bootstrap4.html"
fields = (
@@ -459,7 +442,6 @@ class CaseCollectionTable(tables.Table):
"author",
)
sequence = ("view", )#, "series")
attrs = {"class": "table row-selector"}
def __init__(self, data=None, *args, **kwargs):
@@ -471,7 +453,7 @@ class CaseCollectionTable(tables.Table):
**kwargs,
)
class QuestionSchemaTable(tables.Table):
class QuestionSchemaTable(SelectionTable):
name = tables.Column(
linkify=("atlas:question_schema_detail", {"pk": tables.A("pk")}),
verbose_name="QuestionSchema",
@@ -484,11 +466,10 @@ class QuestionSchemaTable(tables.Table):
"atlas:question_schema_delete", text="Delete", args=[A("pk")], orderable=False
)
class Meta:
class Meta(SelectionTable.Meta):
model = QuestionSchema
template_name = "django_tables2/bootstrap4.html"
fields = ("name", "description", "schema")
attrs = {"class": "table row-selector"}
def render_schema(self, value, record):
+1 -1
View File
@@ -38,7 +38,7 @@ class QuestionTable(SelectionTable):
"sbas:question_update", text="Edit", args=[A("pk")], orderable=False
)
class Meta:
class Meta(SelectionTable.Meta):
model = Question
template_name = "django_tables2/bootstrap4.html"
fields = (