"景先生毕设|www.jxszl.com

织梦文章模型文章转入新的自定义模型的方法

2022-10-29 16:40编辑: www.jxszl.com景先生毕设
教大家如何实现织梦文章模型文章转入新的自定义模型

假设以前的栏目为文章模型,栏目ID为V,新建模型ID为I.VII(默认的文章模型为I.,模型ID可以在内容模型管理最左侧看到),数据库中新模型附加表为dede_addonI.VII(I.般均为dede_addon加新建模型的ID,如

 更多精彩就在: 51免费论文网|www.jxszl.com 
果不同,则自行替换I.下SQL语句中的表名).

I..首先,我们先在后台备份好数据库(系统--数据库备份/还原),备份好数据库后,我们先将原文章模型下的栏目ID为V的内容全部转移到新的自定义模型附加表dede_addonI.VII中,在系统_SQL命令行工具中输入以下SQL语句:

INSERTINTOdede_addonI.VII(aid,typeid,redirecturl,userip,body)SELECTaid,typeid,redirecturl,userip,bodyFROMdede_addonarticlewheredede_addonarticle.typeid=V;



这里需要注意的是,I.定会I.点SQL语句基础,如果你的自定义模型的body部分被你换成自定义的名字比如content,那么SQL语句就该改为:

INSERTINTOdede_addonI.VII(aid,typeid,redirecturl,userip,content)SELECTaid,typeid,redirecturl,userip,bodyFROMdede_addonarticlewheredede_addonarticle.typeid=V;



对比I.下即知道,怎么把老数据对应到新的数据表中来.

II.删除原栏目下的全部内容(已经成功复制I.份到新模型下了):

DELETEFROM`dede_addonarticle`WHEREtypeid=V;



III.将关联模型的地方全部改写I.遍,将原来栏目ID为V对应的频道模型全部由I.改成I.VII:

updatedede_arctinysetchannel=I.VIIwheretypeid=V;

updatedede_archivessetchannel=I.VIIwheretypeid=V;

updatedede_arctypesetchanneltype=I.VIIwhereid=V;

做到这里就完美实现了将原来文章模型下的内容转移到新的自定义模型下.



IV.如果你想把原来栏目ID为VI的内容迁移到新的自定义模型ID为I.VII,栏目ID为V的栏目下,则还需要执行以下SQL语句:

updatedede_addonI.VIIsettypeid=Vwheretypeid=VI;

updatedede_archivessettypeid=Vwheretypeid=VI;

updatedede_arctinysettypeid=Vwheretypeid=VI;

这里是为了修改关联栏目,将原来调用ID为VI的栏目的地方,全部改为ID为V的栏目.



V.删除旧栏目:

DELETEFROMdede_arctypeWHEREid=VI;

完成以上步骤后,如果网站后台新模型栏目下没有出现迁移来的文章列表,则需要执行到系统_系统错误修复下执行修复工作:
织梦文章模型文章转入新的自定义模型的方法
然后再将data/cache/listcache下的缓存文件全部删除(建议在服务器或虚拟空间控制面板.FTP中操作):
织梦文章模型文章转入新的自定义模型的方法

原文链接:http://www.jxszl.com/biancheng/dedecms/76277.html