DataTable: Making some but not all TableColumns editable

I have a DataTable with six columns (TableColumn). I would like to make only one column editable.
I have tried various approaches, like

  • changing the flag “editable” of the DataTable and setting “editor” of only one column;
  • setting “editor” of read-only columns to “None”;
  • searching for something like “editable” or “read-only” on the TableColumn;
  • looking for a read-only or dummy editor;

In the end I managed to solve it by setting “editor=CellEditor()“ on all read-only columns.
This seems to work but I wonder if this is a solid approach because the reference for CellEditor says “This is an abstract base class used to help organize the hierarchy of Bokeh model types. It is not useful to instantiate on its own.“

If this is the way to go, it would probably make sense to add a note in the reference.

Example:
columns = [
TableColumn(field="indent_key", title="Key", width=250,
editor=CellEditor()),
TableColumn(field="description", title="Description", width=250,
editor=CellEditor()),
TableColumn(field="type", title="Type", width=40,
editor=CellEditor()),
TableColumn(field="value_edit", title="Edit", width=40,
editor=NumberEditor()),
TableColumn(field="value_read", title="Read", width=40,
editor=CellEditor()),
TableColumn(field="mismatch", title="synced", width=30,
editor=CellEditor()),
]

self.table = DataTable(
source=self.filtered_source, # a ColumnDataSource
columns=columns,
width=1100,
height=500,
editable=True,
auto_edit=True
)