Hi, I'm using tr:table since a long time, where paging through large data sets is implemented by my own CollectionModel. But I still miss some logics behind CollectionModel methods I have to implement. AFAIK, the overall strategy is to use getRowKey/setRowKey to enable content-based keys binding server model to client rendering, instead of plain position-based indexing. This is important in concurrent cases where the dataset might change across requests, and position would lead to wrong rows.
Then current row can be retrieved by getRowData (far from atomic, though).
But then why do we need to implement setRowIndex/getRowIndex too, which defeats the previous purpose, falling back to position-based keys ? I guess that these two methods should be alternative, where position-based indexing should be used only for non-mutable datasets. However I noticed that all above methods are actually called by component code.
Any comment will be appreciated.

-- Renzo


Reply via email to