我想在json文件的末尾添加数据。我很困惑。我做的是我添加以下代码但不起作用。
PersonRecord= Ext.define('Persons',{
extend:'Ext.data.Model',
fields:[......]
});
var ds=new Ext.data.Store({
storeId: 'person',
model: 'Persons',
autoLoad: true,
proxy: {
type: 'ajax',
url: '../data.json',
reader:{
type: 'json',
root:'pers'
}
}
});
.....
'id':Ext.id(),
'fName':fName,
'lName':lName,
'fatherName':fatherName,
'nationalCode':nationalCode,
'tell':phone
});
ds.add(record);
ds.commitChanges();
但不行。 我可以从json加载数据但不能将新记录添加到json
答案 0 :(得分:1)
Ext JS不会为你更新.json文件。如果您正在读取实际的.json文件,则需要让Ext JS将新数据发送到您的服务器,然后让您的服务器写出更新.json文件。
如果您只能支持非常前沿的浏览器,您还可以使用HTML5(ish)文件API与文件系统项进行交互 - 这是一个演练:http://www.html5rocks.com/en/tutorials/file/filesystem/
使用这种方法,您可以想象创建一个可以与该API交互的自定义Writer,以持久添加,更新,删除等。
答案 1 :(得分:0)
您可能需要为JsonProxy设置一个Writer:
http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.data.proxy.Proxy-cfg-writer