内容操作

SDK 1.1.3 及以上版本

以下操作都需指明操作的内容库,方法如下:

let MyContentGroup = new wx.BaaS.ContentGroup(contentGroupID)

参数说明

参数类型必填说明
contentGroupIDNumber内容库 ID

获取内容详情

MyContentGroup.getContent(richTextID)

参数说明

参数名类型必填说明
richTextIDNumber内容 ID

返回参数

参数类型说明
categoriesNumber Array内容分类
contentString内容详情
coverString封面图 url
created_atNumber创建时间
created_byNumberuser ID
descriptionString摘要
group_idNumber内容库 ID
idNumber内容 ID
titleString内容标题
update_atNumber更新时间

如果有自定义字段,则一并返回。

请求示例

  1. let contentGroupID = 1513076211190694
  2. let richTextID = 1514529306082815
  3. let MyContentGroup = new wx.BaaS.ContentGroup(contentGroupID)
  4. MyContentGroup.getContent(richTextID).then(res => {
  5. // success
  6. }, err => {
  7. // err
  8. })

返回示例

res.data:

  1. {
  2. categories: [1513076252710475],
  3. content: "<p>\b 该片讲述了伊娅不满父亲的恶作剧</p>",
  4. cover: "https://cloud-minapp-1131.cloud.ifanrusercontent.com/1donykIpnuvcRiAX.jpg",
  5. created_at: 1513076305,
  6. created_by: 16042162,
  7. description: "iphoneX 发布",
  8. group_id: 1513076211190694,
  9. id: 1513076305938456,
  10. title: "iphone X",
  11. updated_at: 1513076364
  12. }

查询,获取内容列表

内容查询与数据表查询方法一致。

请求示例

  1. // 查找该内容库下的所有内容
  2. MyContentGroup.find().then()
  3. // 查找该内容库下在指定分类下的内容
  4. let query = new wx.BaaS.Query()
  5. query.arrayContains('categories', [1513076252710475])
  6. MyContentGroup.setQuery(query).find().then(res => {
  7. // success
  8. }, err => {
  9. // err
  10. })

筛选字段 (SDK >= 1.11.1)

select 使用方法可以参考数据表 - 字段过滤小节

扩展字段 (SDK >= 1.11.1)

expand 使用方法可以参考数据表 - 字段扩展小节

假设 _richtextcontent 表中有一个类型为 pointer 的字段,名称为 pointer_test_oder, 指向了 test_order 表

请求示例 1

  1. MyContentGroup.select(['-title','-content']).expand('pointer_test_oder').getContent(1513076305938456).then(res => {
  2. // success
  3. }, err => {
  4. // err
  5. })

请求结果 1

  1. {
  2. "statusCode": 200,
  3. "data": {
  4. "categories": [
  5. 1513076252710475
  6. ],
  7. "cover": "https://cloud-minapp-1131.cloud.ifanrusercontent.com/1donykIpnuvcRiAX.jpg",
  8. "created_at": 1513076305,
  9. "created_by": 16042162,
  10. "description": "iphoneX 发布",
  11. "group_id": 1513076211190694,
  12. "id": 1513076305938456,
  13. "updated_at": 1513076364,
  14. "pointer_test_order": {
  15. "created_at": 1538966895,
  16. "_table": "test_order",
  17. "id": "5bbac56fbd66033df7fd0aa2",
  18. "created_by": 61736923,
  19. "updated_at": 1538966895
  20. }
  21. }
  22. }

请求示例 2

  1. MyContentGroup.select(['title','content', 'pointer_test_oder']).expand('pointer_test_oder').find().then(res => {
  2. // success
  3. }, err => {
  4. // err
  5. })

请求结果 2

  1. {
  2. "statusCode": 200,
  3. "data": {
  4. "meta": {
  5. "next": null,
  6. "offset": 0,
  7. "total_count": 1,
  8. "limit": 20,
  9. "previous": null
  10. },
  11. "objects": [
  12. {
  13. "content": "<p>\b 该片讲述了伊娅不满父亲的恶作剧</p>",
  14. "title": "iphone X",
  15. "pointer_test_order": {
  16. "created_at": 1538966895,
  17. "_table": "test_order",
  18. "id": "5bbac56fbd66033df7fd0aa2",
  19. "created_by": 61736923,
  20. "updated_at": 1538966895,
  21. "pointer_test_order": {
  22. "created_at": 1538966895,
  23. "_table": "test_order",
  24. "id": "5bbac56fbd66033df7fd0aa2",
  25. "created_by": 61736923,
  26. "updated_at": 1538966895
  27. }
  28. }
  29. }
  30. ]
  31. }
  32. }

获取分类详情

MyContentGroup.getCategory(categoryID)

OBJECT 参数说明

参数类型必填说明
categoryIDNumber分类 ID

返回参数

参数类型说明
childrenArray子分类列表
have_childrenBoolean是否含有子分类
idNumber分类 ID
nameString分类名称

请求示例

  1. let categoryID = 1513076252710475
  2. MyContentGroup.getCategory(categoryID).then(res => {
  3. // success
  4. }, err => {
  5. // err
  6. })

返回示例

res.data:

  1. {
  2. "have_children": true,
  3. "id": 1513076252710475,
  4. "name": "科技",
  5. "children": [
  6. {
  7. "have_children": false,
  8. "id": 1514515552050186,
  9. "name": "评测"
  10. }
  11. ]
  12. }

获取内容库分类列表

MyContentGroup.getCategoryList()

请求示例

  1. MyContentGroup.getCategoryList().then(res => {
  2. // success
  3. }, err => {
  4. // err
  5. })

分页与排序

内容查询的分页与排序操作和数据表分页与排序方法一致。

请求示例

  1. MyContentGroup.orderBy('-created_by').limit(5).offset(10).find().then()

SDK 1.1.3 以下版本

获取内容详情

wx.BaaS.getContent(OBJECT)

OBJECT 参数说明

参数类型必填说明
richTextIDNumber内容 ID

返回参数

参数类型说明
contentString内容详情
coverString封面图 url
created_atNumber创建时间
descriptionString摘要
idNumber内容 ID
titleString内容标题

请求示例

  1. // 获取 内容ID 为 10 的内容详情
  2. let richTextID = 10
  3. let objects = { richTextID }
  4. wx.BaaS.getContent(objects).then(res => {
  5. // success
  6. }, err => {
  7. // err
  8. })

返回示例

  1. {
  2. "content": "<p>\b 该片讲述了伊娅不满父亲的恶作剧</p>",
  3. "cover": "https://cloud-minapp-1131.cloud.ifanrusercontent.com/1donykIpnuvcRiAX.jpg",
  4. "created_at": 1504152062,
  5. "description": "超新约全书摘要",
  6. "id": 1680,
  7. "title": "超新约全书"
  8. }

查询,获取内容列表

wx.BaaS.getContentList(OBJECT)

OBJECT 参数说明

参数类型必填说明
contentGroupIDNumber内容库 ID
categoryIDNumber分类 ID

contentGroupID 和 categoryID 两个参数只能选填一个,不能同时添加。

返回参数

参数类型说明
idNumber分类 ID
titleString标题
created_atNumber创建时间

请求示例

  1. // 获取 ID 为 10的内容库下的内容列表
  2. let contentGroupID = 10
  3. let objects = { contentGroupID }
  4. // 获取分类 ID 为 123 的内容列表
  5. // let categoryID = 123
  6. // let objects = { categoryID }
  7. wx.BaaS.getContentList(objects).then(res => {
  8. // success
  9. }, err => {
  10. // err
  11. })

返回示例

  1. {
  2. "meta": {
  3. "limit": 20,
  4. "next": null,
  5. "offset": 0,
  6. "previous": null,
  7. "total_count": 1
  8. },
  9. "objects": [
  10. {
  11. "created_at": 1486138010,
  12. "id": 8,
  13. "title": "wXTAuDctUBqPtQMi"
  14. }
  15. ]
  16. }

分页、查询和排序参考数据表中 获取数据项列表 的操作。

获取内容库详情

wx.BaaS.getContentGroup(OBJECT)

OBJECT 参数说明

参数类型必填说明
contentGroupIDNumber内容库 ID

返回参数

参数类型说明
have_childrenBoolean是否含有子分类
idNumber内容/分类 ID
nameString内容/分类名称

请求示例

  1. // 获取 contentGroupID 为 10 内容库详情
  2. let contentGroupID = 10
  3. let objects = { contentGroupID }
  4. wx.BaaS.getContentGroup(objects).then(res => {
  5. // success
  6. }, err => {
  7. // err
  8. })

返回示例

  1. {
  2. "meta": {
  3. "limit": 20,
  4. "next": null,
  5. "offset": 0,
  6. "previous": null,
  7. "total_count": 1
  8. },
  9. "objects": [
  10. {
  11. "have_children": true,
  12. "id": 9,
  13. "name": "zvYMFumJSMYoaiVn"
  14. }
  15. ]
  16. }

一个内容库里会有分类,会有内容,但不会出现同时存在的情况; 分类里可能会有分类,也就是子分类,通过 have_children 可以判定。

获取内容库列表

wx.BaaS.getContentGroupList()

请求示例

  1. wx.BaaS.getContentGroupList().then(res => {
  2. // success
  3. }, err => {
  4. // err
  5. })

返回参数

参数类型说明
idNumber内容库 ID
nameString内容库名称

返回示例

  1. {
  2. "meta": {
  3. "limit": 20,
  4. "next": null,
  5. "offset": 0,
  6. "previous": null,
  7. "total_count": 1
  8. },
  9. "objects": [
  10. {
  11. "id": 9,
  12. "name": "zvYMFumJSMYoaiVn"
  13. }
  14. ]
  15. }

分页、查询和排序参考数据表中 获取数据项列表 的操作。

获取分类详情

wx.BaaS.getContentCategory(OBJECT)

OBJECT 参数说明

参数类型必填说明
categoryIDNumber分类 ID

返回参数

参数类型描述
idNumber分类 ID
nameString分类名称
have_childrenBoolean是否包含子分类
childrenArray子分类列表,见 Tip

请求示例

  1. // 获取 categoryID 为 10 的分类详情
  2. let categoryID = 10
  3. let objects = { categoryID }
  4. wx.BaaS.getContentCategory(objects).then(res => {
  5. // success
  6. }, err => {
  7. // err
  8. })

返回示例

  1. {
  2. "have_children": true,
  3. "id": 7,
  4. "name": "sOjPLsIfGhfrdtIU",
  5. "children": [
  6. {
  7. "have_children": false,
  8. "id": 8,
  9. "name": "KdaPCuwRAKrGdsPS"
  10. }
  11. ]
  12. }

分类里可以存在分类,也就是嵌套的分类, 当 have_children 为 true 时,说明有子分类,children 里存放的就是子分类。