视频基地的 OMS 系统是自成一套的开发环境,颇有点像“云端开发、部署”的意味,几乎所有工作均在在线进行。我们开始接触的时候更多的都是对这个系统的吐槽,本人也不例外。不过,在逐渐接触之后,发现自有其合理的地方。每个界面都有变化,不尽相同,怎么处理约束部分和开发许可部分成了我们关心的话题。在 OMS 的态度是,开放前端表示层,而业务层、数据层封装不可见,形成了接口供调用。实践中,用户可以用包含 Java 代码的 JSP 控制一些逻辑,也可以使用基于 FreeMaker 的扩展标签。比如像我们之前遇到的分页问题,OMS 早已提供相应的标签,却不知道如何实现,一直没有解决,只能透过通用页面进行分页。
分页一般设置:
<cms:nodecont var="dhnodecont" dataobjectid="1" nodeid="10500144" sortKey="ranking" sortType="desc" pagesize="3" pageidx="${param.cpage == null ?1:param.cpage}"/>
其中 pagesize="3" pageidx="${param.cpage == null ?1:param.cpage}" pagesize是每页记录数,pageidx 是页面(不需要指定)
下面就引用分页标签即可(自动生成 pageMax 总页数)
如果不能对于子栏目分页,因为剧集都是保存在子栏目中管理的。如果不能分页,只能把所有剧集显示在一页中。后来的解决的方法是不读取子节点栏目,而是内容节点。把剧集的第一集或者最后一集作为内容节点保存,形成一个栏目,读取这个栏目然后分页就可以了。
如果本地手机测试正常,审核时候却发现有页面有“异物”,那是在 PC 才上看到。于是,我找到无线网卡,通过白名单上的流量经过 wifi 共享给 PC,才能启用网页调试器调试“异物”。总之,OMS 的开发并不友好,测试服务器也不稳定,但总算最后找到解决办法。