Django Table2 with empty values vs Table.render_foo methods
Если я устанавливаю значение empty_values=(None, )
, у меня перестает работать блок else
, к значениям, которые должны в него попадать, присваиваются классы из блока elif
, но если я значение устанавливаю таким образом empty_values=()
у меня всё работает, но пустые значения в таблице при этом заполняются значением None. Как мне совместить желаемое: чтобы пустое значение в таблице было прочерком?
Status = tables.Column(empty_values=(None, ))
def render_Status(self, value, column):
if value == 'Выполнено':
column.attrs = {'td': {'class': 'table-success'}}
elif value == 'В работе':
column.attrs = {'td': {'class': 'table-warning'}}
else:
column.attrs = {'td': {'class': 'table-danger'}}
return value
Из документации следует, что я не могу использовать Table.render_foo methods с пустыми значениями:
render_foo methods are only called if the value for a cell is determined to be not an empty value. When a value is in Column.empty_values, a default value is rendered instead (both Column.render and Table.render_FOO are skipped).
Но как мне тогда заменить None
на прочерк, неужто ли единственный способ - это добавлять значение прочерк в БД для возможности выбора данного значения из выпадающего списка и установкой его по умолчанию?