我正在尝试使用django-tables2预渲染已选中的复选框,但无法成功实现。
这是我的table.py文件。
id
是我需要存储的字段,因为它用于更新数据库,在表单提交时将selected
字段设置为true。如何获得checked
参数来与此配合使用并正确引用selected
字段?
class SomeTable(tables.Table):
add = tables.CheckBoxColumn(accessor='id',checked='selected')
class Meta:
model = SomeModel
template_name = "django_tables2/bootstrap.html"
fields = ['name','add']
谢谢!
答案 0 :(得分:0)
您可以通过使用Table.render_foo method来实现此目的,如果出现以下情况,它将覆盖渲染:
from django_tables2.utils import AttributeDict
class SomeTable(tables.Table):
add = tables.CheckBoxColumn(empty_values=())
def render_add(self, value, bound_column, record):
default = {"type": "checkbox", "name": bound_column.name, "value": record.id}
general = self.attrs.get("input")
specific = self.attrs.get("td__input")
attrs = AttributeDict(default, **(specific or general or {}))
return mark_safe("<input %s/>" % attrs.as_html())
class Meta:
model = SomeModel
template_name = "django_tables2/bootstrap.html"
fields = ['name','add']