2016-04-21 103 views
0

情景很簡單。ExtJs添加新記錄時刪除現有記錄

我有一個商店,它從API端點填充。 對於這個例子,我們假設我們在那家商店有一條記錄。 關於此的重要細節是我們記錄的內部ID是2.

現在,我們創建一個新的模型實例並使用一些數據填充它。添加到商店。此記錄的ID爲1. Store.add(新模型實例)正常工作。

現在,當我們創建第三條記錄並嘗試將其添加到商店時,我們遇到了問題。第三條記錄的標識爲2.我們在商店中存儲的第一條記錄的標識爲2.

第三條記錄覆蓋第一條記錄,發出對從端點獲取的記錄的刪除。

這是一個錯誤,或者一個功能...

回答

1

它的一個特點,專賣店模式作爲記錄的唯一標識符idProperty,默認情況下其'id',所以當你試圖添加新的記錄,記錄與同樣的'id'已經存在於實際更新現有記錄的商店中。

您必須更改商店模型idProperty

+0

謝謝。但是,我確實在模型中爲該實體的主鍵設置了idProperty。當創建模型的新實例時,ID將在客戶端生成。保存後,記錄將從數據庫中重新加載實體的實際ID。 – theturrible

+0

將id設置爲其他值確實可以解決問題, – theturrible

+0

也許您必須在從遠程源加載實際數據之前爲「id''屬性生成(僞)隨機值? –