使用ajax的extjs存储服务提供多读取请求
未回答:存储ajax服务多读请求(最佳实践问题) 您好,我正在尝试理解使用Ajax api配置的存储代理的正确设计概念,并对如何实现这一点提出疑问 假设我有一个商店,它有一个使用Ext.data.proxy.Ajax类的服务器代理,我有一个api,具有以下内容:使用ajax的extjs存储服务提供多读取请求,ajax,json,spring-mvc,extjs,extjs4,Ajax,Json,Spring Mvc,Extjs,Extjs4,未回答:存储ajax服务多读请求(最佳实践问题) 您好,我正在尝试理解使用Ajax api配置的存储代理的正确设计概念,并对如何实现这一点提出疑问 假设我有一个商店,它有一个使用Ext.data.proxy.Ajax类的服务器代理,我有一个api,具有以下内容: proxy: { type: 'ajax', api: { read: 'some/something/list.json', create: 'some/something/insert.jso
proxy: {
type: 'ajax',
api: {
read: 'some/something/list.json',
create: 'some/something/insert.json',
update: 'some/something/update.json',
destroy: 'some/something/destroy.json'
}
}
现在假设我的读取是由一个搜索按钮触发的,当我有一个空白文本框并单击search时,它会通过读取api发出请求来检索list.json。但是我想让另一个read作为同一个store/api的一部分来读取单个记录,比如:
read: 'some/something/<field_value>.json'
读:“some/something/.json”
我的代理读取已分配给list.json,但我希望允许同一存储代理也能够读取单个记录搜索。即使我的委托书中不能有两份已读声明。我该怎么写呢
帮我理解?也许我的服务器控制器必须能够通过关键字@PathVariable确定路径是否为list,即.json,然后调用list db查询,否则如果.json,则通过db运行单独的搜索查询。??如果是这样的话,读:url是什么
设计和建造这个的最佳方式是什么
提前感谢如果您想读取单个记录,而不是在存储中定义代理,您应该在模型中执行,然后在模型本身上调用load,如下所示
Ext.define('app.model.User', {
{
fields: [
{ name: 'LoginUserId', type: 'string' },
{ name: 'FirstName', type: 'string' },
{ name: 'LastName', type: 'string' }],
proxy:
{
type: 'rest',
url: '/User',
reader:
{
type: 'json',
root: ''
}
}
});
var user = Ext.ModelMgr.getModel('app.model.User');
user.load(123, {
success: function(userObj) {
}
});
您是否考虑使用URL路径而不是更改URL路径?