当前位置: 首页 > news >正文

外包 网站开发公司我要发布信息

外包 网站开发公司,我要发布信息,长春南关网站建设,南京网站关键词推广文章目录 前言一、Read二、Create三、Update四、Delete 前言 ODATA V4在CRUD方面与V2截然不同。 这篇文章简单介绍V4中是如何进行CRUD操作 一、Read Model不再有read方法, 一般是把Path绑定到View中进行读取, 如果需要额外的读取数据,可使用…

文章目录

  • 前言
  • 一、Read
  • 二、Create
  • 三、Update
  • 四、Delete


前言

ODATA V4在CRUD方面与V2截然不同。
这篇文章简单介绍V4中是如何进行CRUD操作


一、Read

Model不再有read方法, 一般是把Path绑定到View中进行读取, 如果需要额外的读取数据,可使用如下方法

需要在Context中调用requestObject方法才能实现数据的读取
oModel.bindContext方法需要绑定对应的Entity或者路径

  • 代码:
var oModel = this.getView().getModel()
var oContext = oModel.bindContext("/Mara")
oContext.requestObject().then(function (oData) {// 处理成功的回调console.log("Data read successfully:", oData);
}).catch(function (oError) {// 处理失败的回调console.error("Error reading data:", oError);
});
  • 结果:
    在这里插入图片描述

二、Create

Model不再有create方法

创建和Read不一样,需要调用bindList方法创建Binding,然后使用Binding.create方法创建。

// 创建需要的数据
var json = {"Matnr": 'GOOD',"Maktx": 'JOB',"Meins": '',
}var oModel = this.getView().getModel();
var oBinding = oModel.bindList("/Mara")
//创建action
var oContext = oBinding.create(json)
//创建回调
oContext.created().then(function (res) {oModel.refresh()},function (res) {alert(res)}
)

如果已经绑定了一个Table,则可以直接拿到Bidning
通过Table Binding创建时不需要刷新也会自动更新数据。

var json = {"Matnr": 'GOOD',"Maktx": 'JOB',"Meins": '',
}var oTable = this.byId("itemTable");
var oBinding = oTable.getBinding("items"); //get binding// var oModel = this.getView().getModel();
// var oBinding = oModel.bindList("/Mara")var oContext = oBinding.create(json)
oContext.created().then(function (res) {// oModel.refresh()  不需要refresh},function (res) {alert(res)}
)

三、Update

Model不再有update方法,通过setProperty方法设置字段属性,即可自动发送PUT请求并修改后端数据

  • 如果是绑定在Table
 var oTable = this.byId("itemTable")var selectedItems = oTable.getSelectedItems()selectedItems.forEach(item => {var oContext = item.getBindingContext()oContext.setProperty("Maktx", '测试'); // 方法结束时,自动执行batch,如果是多个字段,则只会提交一次});
  • 或者额外绑定Context,然后再进行字段属性变更
 const contextBinding = oModel.bindContext("/Mara('ZZZ')");const targetContext = contextBinding.getBoundContext();targetContext.setProperty("Maktx", '测试');
  • 当然,也可以绑定到一个组件之后,再进行属性变更
 this.byId("saveBox").bindElement("/Mara('ZZZ')")var oContext3 = this.byId("saveBox").getBindingContext()oContext3.setProperty("Maktx", '测试');

四、Delete

删除可以通过context进行,也可以通过model进行, 删除操作不需要调用refresh方法,删除后会自动刷新

  • 在Table中删除所选行
onDeleteButtonPress: function () {var that = thisvar oTable = this.byId("itemTable")var selectedItems = oTable.getSelectedItems()selectedItems.forEach(item => {var oContext = item.getBindingContext()oContext.delete().then(function (res) {// oModel.refresh()alert("ok")},function (res) {alert("error")})});
},
  • 使用Model进行删除
var oModel = this.getView().getModel()
oModel.delete("/Mara('ZZZ')").then(function (res) {// oModel.refresh()// alert("ok")},function (res) {// alert("error")})
http://www.zhongyajixie.com/news/30336.html

相关文章:

  • 赛门仕博做网站怎么样域名注册入口
  • xml网站模板正规seo关键词排名网络公司
  • 最专业的做网站公司百度收录规则
  • 清风网站建设百度推广一个月多少钱
  • 重庆网站推广多少钱网站建设开发
  • 河西做网站公司百度招商客服电话
  • 上海做网站的企业湖南专业seo公司
  • 做牙齿的招聘网站品牌宣传策略
  • 大学教学应用网站开发现状app拉新项目
  • 公众号兼职网站开发百度退款客服电话
  • 淘宝店铺首页设计黄石seo诊断
  • 衡水网站制作费用外链图片
  • 专业的网站建设企业百度站长工具抓取诊断
  • 求做网站的想学编程去哪里找培训班
  • 网站标题结构怎样优化网站排名靠前
  • 建网站入门广安seo外包
  • 微网站介绍天津seo优化排名
  • 网站推广含义电工培训
  • 重庆市建设工程信息网官网公示google关键词seo
  • 北京南站停车场收费标准班级优化大师怎么用
  • 西安有关做网站的公司太原seo外包平台
  • 安康市城市建设局网站安徽建站
  • 淘宝可以在哪些网站上面打做推广新媒体营销方式有几种
  • 网站建设创新能力痛点宣传网站有哪些
  • 做内部优惠券网站赚钱吗深圳高端网站建设公司
  • 网站建设5000费用附近有没有学电脑培训的
  • 不同类型网站优势腾讯新闻潍坊疫情
  • wordpress常用标签南山网站seo
  • 佛山网站建设推广厂商排名市场营销渠道
  • 中国建设银行官方网站2018年年报站长统计幸福宝下载