在 Oracle Jet 中使用 Rest Web 服务
Consuming Rest Webservices in Oracle Jet
我是 Oracle Jet 的新手。我想要实现的是在 Oracle Jet Table.
中使用 Rest Web 服务
那是我的 ViewModel
function CustomerViewModel() {
var self = this;
self.DeptCol = ko.observable();
self.datasource = ko.observable();
self.serviceURL = '/hr/employees/';
self.parseDept = function(response) {
return {empno: response['empno'],
DepartmentName: response['ename'],
LocationId: response['job'],
ManagerId: response['hiredate'],
mgr: response['mgr'],
sal: response['sal'],
comm: response['comm'],
deptno: response['deptno']};
};
self.Department = oj.Model.extend({
urlRoot: self.serviceURL,
parse: self.parseDept,
idAttribute: 'empno'
});
self.myDept = new self.Department();
self.DeptCollection = oj.Collection.extend({
url: self.serviceURL,
model: self.myDept
});
self.DeptCol(new self.DeptCollection());
}
这是我的观点
<table id="table" summary="Department List" aria-label="Departments Table"
data-bind="ojComponent:{
component:'ojTable',
data:datasource,
columns:[
{
headerText:'empno',
field:'empno'
},
{
headerText:'ename',
field:'DepartmentName'
},
{
headerText:'job',
field:'LocationId'
},
{
headerText:'hiredate',
field:'ManagerId'
},
{
headerText:'mgr',
field:'mgr'
},
{
headerText:'sal',
field:'sal'
},
{
headerText:'comm',
field:'comm'
},
{
headerText:'deptno',
field:'deptno'
}
]
}">
</table>
当我测试我的页面时,它没有显示任何错误并且页面是空白的。有人可以帮忙吗?
谢谢
在您的 CustomerViewModel
结束时,您可能错过了实际设置 datasource
可观察对象:
self.datasource(new oj.CollectionTableDataSource(self.DeptCol()));
请查看以下教程here。
它有两种情况:
- 标准 Jquery.
- Oracle Jet 通用模型。
在您提供的示例中,您使用的是 Oracle jet Common 模型,这对于基于 Rest web 服务的 CRUD 操作非常有用。
我建议您也看看标准 Jquery 方案,它非常有用且易于使用。
希望对您有所帮助。
我是 Oracle Jet 的新手。我想要实现的是在 Oracle Jet Table.
中使用 Rest Web 服务那是我的 ViewModel
function CustomerViewModel() {
var self = this;
self.DeptCol = ko.observable();
self.datasource = ko.observable();
self.serviceURL = '/hr/employees/';
self.parseDept = function(response) {
return {empno: response['empno'],
DepartmentName: response['ename'],
LocationId: response['job'],
ManagerId: response['hiredate'],
mgr: response['mgr'],
sal: response['sal'],
comm: response['comm'],
deptno: response['deptno']};
};
self.Department = oj.Model.extend({
urlRoot: self.serviceURL,
parse: self.parseDept,
idAttribute: 'empno'
});
self.myDept = new self.Department();
self.DeptCollection = oj.Collection.extend({
url: self.serviceURL,
model: self.myDept
});
self.DeptCol(new self.DeptCollection());
}
这是我的观点
<table id="table" summary="Department List" aria-label="Departments Table"
data-bind="ojComponent:{
component:'ojTable',
data:datasource,
columns:[
{
headerText:'empno',
field:'empno'
},
{
headerText:'ename',
field:'DepartmentName'
},
{
headerText:'job',
field:'LocationId'
},
{
headerText:'hiredate',
field:'ManagerId'
},
{
headerText:'mgr',
field:'mgr'
},
{
headerText:'sal',
field:'sal'
},
{
headerText:'comm',
field:'comm'
},
{
headerText:'deptno',
field:'deptno'
}
]
}">
</table>
当我测试我的页面时,它没有显示任何错误并且页面是空白的。有人可以帮忙吗? 谢谢
在您的 CustomerViewModel
结束时,您可能错过了实际设置 datasource
可观察对象:
self.datasource(new oj.CollectionTableDataSource(self.DeptCol()));
请查看以下教程here。 它有两种情况:
- 标准 Jquery.
- Oracle Jet 通用模型。
在您提供的示例中,您使用的是 Oracle jet Common 模型,这对于基于 Rest web 服务的 CRUD 操作非常有用。
我建议您也看看标准 Jquery 方案,它非常有用且易于使用。
希望对您有所帮助。