CmsWing源码分析(十三)

本文主要分析CmsWing的四个关键方法:modelinfo()用于获取模型表名,checkdoctype()检查子文档类型,getStatus()获取数据状态,getError()返回模型错误信息。详细阐述了每个方法的功能实现和参数处理,对理解CmsWing的模型操作有重要帮助。
摘要由CSDN通过智能技术生成

2021SC@SDUSC


此次继续分析文件src/model/cmswing/document.js
该文件中的方法主要是与文档信息相关的操作。

一、modelinfo()

此方法用于添加或者新增扩展内容, 获取当前模型表名字。
此方法只有一个参数 mdoelid(应该是开发的时候手误了orz),是模型id。
首先通过参数 mdoelid 获取文档模型信息。判断模型信息是否有来自于其他模型的扩展信息,若有则将当前模型表名字添加扩展内容赋值给返回对象,若没有直接将文档模型名字赋值给返回对象。返回对象即表名。

async modelinfo(mdoelid) {
   
    const modelinfo = await this.model('cmswing/model').get_document_model(mdoelid);
    let model;
    if (modelinfo.extend == 1) {
   
      model = `document_${
   modelinfo.name}`;
    } else {
   
      model = modelinfo.name;
    }
    return model;
  }

二、checkdoctype()

此方法用于检查指定文档下面字文档的类型。
此方法共有两个参数,第一个参数 type 是子文档的类型,第二个参数 pid 是父文档类型。
首先对 type 和 pid 进行初始化处理:传入的参数不为空则为传入的值,传入的参数为空则赋值为 null 。res 为返回值,此处进行初始化赋值。
若 type 为空,返回一个 map 类型的值,在返回值中告知系统文档类型不能为空。若 pid 为空或0,返回初始化的 res 。若 type 不为空、pid 不为空且不为0,查询父文档的类型,并按不同类型进行返回。若父文档类型为目录或主题,方法返回初始化的 res ;若父文档类型为段落,在返回值中告知

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值