码迷,mamicode.com
首页 > 其他好文 > 详细

相关文章、关联文章、产品功能开发方案

时间:2017-04-15 00:26:57      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:.com   ado   批量   com   情况   行存储   class   参数   实现   

  内容管理系统,如文章管理、产品管理的时候,经常会出现这样的场景:某篇文章为系列文章,或者为系列产品,然后需要这个系列的文章/产品在展示的时候,展示出同系列的文章或者产品。同时,在后台管理的时候,需要在有关联关系后,能对关联关系进行管理(增删改查)。

  这样的需求,因为考虑到信息维护的唯一性,原计划是新增数据表,用中间数据表对关键结构进行存储管理,这样更规范,也不用对原来的文章数据进行破坏,不增加大数据量的文章表字段。不过后来考虑到后期在管理的时候,工程量开发更大,就抛弃了这个方案。

  还是用最简单的方案,在文章数据表增加关联文章的字段,字段以数组形式存储关联文章的ID,给予的排序序号;

  新增关联的时候,对每个关联的文章插入字段;

  修改的时候,也对每个关联的文章插入字段;

  删除的时候,对前面已有的文章,也清空字段;

  备注:此处,仅考虑一对多关联,或者说只考虑并集的情况,不考虑交集情况,即,A关联B、C,关联后,ABC的关联性一致,不存在B关联除AC之外的其他项,不再关联D,如果有更多的关联需求,则需要使用TAG标签完成,此处不考虑;

 

  为减少工作量,以函数封装:

输入参数

修改关联数组    数组形式(参数1  序号   参数2   ID)    必填

原始关联数组    数组形式                                                选填    默认为空

数据表名称       文本形式  string                                      选填    默认为article

输出参数

输出    false/true

 

函数处理思路

  在新增文章或者说新增关联文章的时候,即原来的文章或者新增的文章的关联字段为空,则接下来的操作都为批量update操作

如果原始关联数组不为空,则需要对原始关联数组进行循环,然后对对应的文章字段进行删除,然后再开始修改操作

  开始修改操作,对修改关联数组进行循环,然后对对应的文章字段进行修改操作;

修改完毕,返回true

 

  最终实现的功能图如下,在实际开发过程中,还是遇到了一些问题,例如数组排序、在编辑页面实现ajax获取文章列表,ajax搜索文章、重复数据剔除等等。

技术分享

弹出相关文章插入窗口,并搜索相关文章

技术分享

插入相关文章\关联文章后的显示,前面打钩去掉,则不关联

相关文章、关联文章、产品功能开发方案

标签:.com   ado   批量   com   情况   行存储   class   参数   实现   

原文地址:http://www.cnblogs.com/ledaokj/p/6711247.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!