Answered: Store.findRecord by id
I import some data from the server into my store. The model for that data has an ‘id’ field which contains the id of that element as received from the server. So, for instance, here’s an item with the id 28. The question is, why does it respond when I call an item with the id 2?
The same item shows up when I call it as findRecord('id', 28)
2 is not the index of this item either.
Posted by fbchen
Ext.data.Store.findRecord(String fieldName, String/RegExp value, [Number startIndex], [Boolean anyMatch], [Boolean caseSensitive], Boolean exactMatch)
By default, the value is not exact matched in this method. In the frist step, the value is converted into a String, even if it is a Number, and in your exapmle here, 2 becomes '2'?so the returned item is accidental, say the first match one is '28'.
To achieve exact match, use getById instead, or findRecord('id', '2', 0, false, true, true)