如何告诉django-tables2我想在表中包含哪些列?我知道这个Column属性是 'visible',可以设置为False.但是我有一个包含许多字段的模型,并且只想显示其中的一些,因此编写所有列的完整列表,只是为了告诉它们大部分都不可见,这似乎不是正确的方法.
我正在寻找的是一种提供要显示的列名列表的方法,如果可行的话甚至可以让用户能够选择他想要的列.
另一个解决方案出现在我的脑海中 - 默认情况下将'visible'属性设置为False,但由于它是在Column类中定义的,我仍然需要编写一个完整的列表.
由于我没有找到任何django-tables2讨论论坛,我在这里问.
我有以下设置。
from django.db import models
from django.contrib.auth.models import User
class Event(models.Model):
name = models.CharField(max_length=64)
date = models.DateField()
ATTENDANCE_CHOICES = (
('A','Attending'),
('N','Absent'),
('L','Taken ill'),
)
class Attendance(models.Model):
student = models.ForeignKey(User)
event = models.ForeignKey(Event)
status = models.CharField(max_length=1, choices=ATTENDANCE_CHOICES)
Run Code Online (Sandbox Code Playgroud)
简而言之:学生(用户)参加或不参加课程(事件),这是通过出勤记录的。问题是一次添加一个出勤记录。
我正在寻找一种为每个班级(每个事件对象)提供表格的方法,其中包含所有学生的列表和出勤状态单选按钮或旁边的下拉菜单。
像这样的东西:
https://i.stack.imgur.com/J2G4d.png
我看过很多关于通过 django admin 插入多个/批量记录的讨论,我开始想知道这是否可以通过 django admin 实现,还是我必须从头开始创建这样的表单?不管怎样,最好的(最像 django 的)方法是什么?