Java 如何在ExtJS viewmodel中加载非模型数据?
我们已经慢慢习惯了ExtJS,最近我们开始使用视图模型将数据绑定到表单面板。一般来说,我们试图保持ExtJS模型与后端java模型的一致性,所需的任何转换都是通过视图模型公式完成的。当查看常规数据时,这种方法非常有效。但是,当我们想要显示任何类型的模型中都不存在的更具体的数据时,我们不确定如何在客户端加载和创建这些数据。例如: 我有一个带有Java 如何在ExtJS viewmodel中加载非模型数据?,java,extjs,viewmodel,Java,Extjs,Viewmodel,我们已经慢慢习惯了ExtJS,最近我们开始使用视图模型将数据绑定到表单面板。一般来说,我们试图保持ExtJS模型与后端java模型的一致性,所需的任何转换都是通过视图模型公式完成的。当查看常规数据时,这种方法非常有效。但是,当我们想要显示任何类型的模型中都不存在的更具体的数据时,我们不确定如何在客户端加载和创建这些数据。例如: 我有一个带有id和description属性的文件夹模型。当通过读取请求加载文件夹模型时,模型从数据库等加载描述。与用户模型相同。两个属性id和username。我的问题
id
和description
属性的文件夹模型。当通过读取请求加载文件夹模型时,模型从数据库等加载描述。与用户模型相同。两个属性id
和username
。我的问题是,如果我有一个表单面板,其中显示用户及其关联文件夹,该怎么办。就数据库层而言,有一个1:1的表,其中用户id
连接到文件夹id
,以匹配用户及其个人文件夹。但是,我们在任何模型中都没有此信息。有一个名为getUserFolder
的特定服务,它为给定的特定用户id
返回一个文件夹
对象。我应该如何将其放入面板的视图模型中,以及如何处理加载过程
我是否应该创建一个表示表的新模型,并使用get请求获取关联,然后使用公式
获取给定用户的匹配文件夹id
?我是否应该使用普通的Ext.Ajax.request
获取文件夹id
,然后加载文件夹模型?我是否应该创建一个通用服务,返回所有数据(用户和文件夹),然后在客户端通过两种型号的setData
在请求回调中匹配它们?最佳做法是什么
TL;DR:在viewmodels中加载模型数据效果很好,但如何处理在viewmodels中加载非模型数据的问题?它们仅在特定场景中需要,不包括在模型的创建中。您的任务与视图关系不大。这都是模型,数据模型:)在ExtJS中有一个概念,包括。因此,我建议您研究一下。数据绑定和支持它的ViewModel是ExtJS的强大补充
Ext.create('Ext.panel.Panel', {
title: 'Simple Form',
viewModel: {
type: 'test'
},
layout: 'form',
defaultType: 'textfield',
items: [{
fieldLabel: 'First Name',
bind: '{firstName}' // uses "test" ViewModel from parent
},{
fieldLabel: 'Last Name',
bind: '{lastName}'
}]
});
你看过ExtJS吗?你可以建模,一个或多个关系等等。我的问题措辞似乎一点也不清楚。这里有一个新问题的链接:我的问题措辞似乎一点也不清楚。这里有一个新问题的链接:我的问题措辞似乎一点也不清楚。以下是一个新问题的链接: