wx.BaaS.uploadFile(params).then(res => {
let data = JSON.parse(res.data)
product.set('manual', data.file)
product.save()
})
注: 添加记录时为字段设置的数据,要与预先在知晓云平台设定的字段的数据类型一致,当仅更新一个字段,并且使用的数据不合法时,将无法成功保存,请求返回 Failed to save record, type conflict on fields 错误,如果更新多个字段,其中有一个或一个以上字段数据合法,则请求成功,但其中数据不合法的字段将不会成功保存,如下示例:
/*
* 同时设置 amount 和 date 字段,其中 date 为日期类型,这里为其赋了一个 string 类型的值,
* 该请求会返回 200,但只有 amount 被成功设置为 10
*/
let order = Order.create()
order.set('amount', 10)
order.set('date', 'abc')
order.save()
// 元素类型为 integer
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
record.set('array_int', [1, 2, 3])
record.save()
// 元素类型为 string
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
record.set('array_str', ['a', 'b', 'c'])
record.save()
// 元素类型为 object
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
let obj_1 = {a: 10}
let obj_2 = {b: 20}
record.set('array_obj', [obj_1, obj_2])
record.save()
// 元素类型为 geojson
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
let point = new wx.BaaS.GeoPoint(10, 10)
record.set('array_geo', [point])
record.save()
// 元素类型为 file
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
let MyFile = new wx.BaaS.File()
MyFile.upload(fileParam).then(res => {
let file = res.data.file // res.data 为 Object 类型
record.set('array_file', [file])
return record.save()
})
// 元素类型为 date
let Table = new wx.BaaS.TableObject(tableName)
let record = Table.create()
let date = new Date().toISOString()
record.set('array_date', [date])
record.save()
添加 pointer 类型数据
info 每张表最多能建立 3 个 pointer 类型的字段。如有更多需求,请提交工单说明 pointer 指向的数据表,不能改名或删除
假设现在有一张 Article 表, Article 表部分字段如下:
字段名
字段类型
说明
comment
pointer
指向了 Comment 表
user
pointer
指向了 _userprofile 表
现在在 Article 表中新增一条数据,其中:
comment 字段指向了 Comment 表中 id 为 5bad87ab0769797b4fb27a1b 的数据行
user 字段指向了 _userprofile 表中 id 为 69147880 的数据行
// 获取一个 tableRecord 实例
let Comment = new wx.BaaS.TableObject('Comment')
// 5bad87ab0769797b4fb27a1b 为 Comment 表中某行数据的 id
let comment = Comment.getWithoutData('5bad87ab0769797b4fb27a1b')
// 69147880 为 _userprofile 表中某行数据的 id
let user = new wx.BaaS.User().getWithoutData('69147880')
// 在 city 表中创建一行数据
let Article = new wx.BaaS.TableObject('Article')
let article = Article.create()
// 给 pointer 字段赋值
article.set('comment', comment)
article.set('user', user)
article.save().then(res=>{
// success
})