django-table2-根据特定列的值更改整行的背景色
我一直试图用django-table2包突出显示表的整行 我通过以下操作成功更改了一条记录的字体颜色:django-table2-根据特定列的值更改整行的背景色,django,django-tables2,Django,Django Tables2,我一直试图用django-table2包突出显示表的整行 我通过以下操作成功更改了一条记录的字体颜色: def render_MyValue(self, value, column, record): if record['Warning']: column.attrs = {'td': {'style': 'color:darkorange;'}} else: column.attrs = {'td': {'style': 'color:black;'}
def render_MyValue(self, value, column, record):
if record['Warning']:
column.attrs = {'td': {'style': 'color:darkorange;'}}
else:
column.attrs = {'td': {'style': 'color:black;'}}
return value
class DetailedReportTable(tables.Table):
...
class Meta:
row_attrs = { "bg-color": lambda record: "#8B0000" if record['Warning'] else "#000000" }
请在我的表格类下查找:
class DetailedReportTable(tables.Table):
MyValue = tables.Column(orderable=False, verbose_name='Value')
...
Warning = tables.Column(orderable=False, visible=False)
问题是,如果警告为真,我找不到如何设置橙色行的背景
根据文档,我还尝试了以下操作:
def render_MyValue(self, value, column, record):
if record['Warning']:
column.attrs = {'td': {'style': 'color:darkorange;'}}
else:
column.attrs = {'td': {'style': 'color:black;'}}
return value
class DetailedReportTable(tables.Table):
...
class Meta:
row_attrs = { "bg-color": lambda record: "#8B0000" if record['Warning'] else "#000000" }
但这是在做什么
如何使用django-table2更改行的背景色?您尝试的方法很接近,但您只是在行html元素上设置了一个属性“bg color”-该属性不存在。相反,您希望设置一个类(可以在CSS中设置样式),或者直接设置一个样式属性。这是第二种选择:
class DetailedReportTable(tables.Table):
...
类元:
行属性={“style”:lambda记录:“背景色:#8B0000;“if记录['Warning']else”背景色:#000000;”}
不错。这很好用。谢谢你解释为什么它不起作用!