找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1905|回复: 0

[分享] dedecms主从表 附加表 同时调用

[复制链接]
发表于 2018-8-1 10:55:32 | 显示全部楼层 |阅读模式 来自 河南省新乡市
一般来说,有两种调用的情况(这里讨论的主要是首页,或者列表页调用,内容调用不存在这种问题)

1,你建立了一个自定义模型,但是有一些字段,比如图片字段,依然在主表中(这种时候,你自己建立模型中最好不要在重复包含主表中的字段了,否则容易引起混乱),这样,那么你的主要目标在附件表中:

解决方法:

后台核心设置 中开启 是否在arclist标记中包含附加表指定的字段 然后可以在arclist中直接用[field:字段名/]来调用

调用语句主要是{arclist},只要在设置中包含了附加表中的指定字段即可

shooooot,后台看了,发现v55没有这个选项,继续找到了下面这种方法:希望成功

将需要调用的字段,换成如下格式放在arclist标签内即可.
  1. [field:id runphp="yes"]
  2. global $dsql;
  3. $a=”SELECT genban.新增字段名 FROM dede_附加表名 as genban where genban.aid=@me”;
  4. $arcRow = $dsql->GetOne($a);
  5. @me=”.$arcRow[新增字段名].”;
  6. [/field:id]
复制代码

先说不种方法好不好,想了一下,效率实在成问题,我只是想调用主表中的一个image字段,剩下所有字段都在附加表中,如果用这样的格式,可想有多复杂!

继续google和baidu,找到了另外一个方法:

为了方便调用,arclist标签调用附加表字段不再以频道模型指定的字段为依据,调用时需注意下面两个问题:
a、必须指定 channelid (内容频道id);
b、直接在标记指定要调用的字段(可以在内容提模型管理中看这些字段名);

  1. {dede:arclist addfields=’language,softtype’ row=’8′ channelid=’3′}
  2. [field:textlink /] – [field:softtype /] – [field:language /]<br />
  3. {/dede:arclist}
复制代码

2,你的主要目标在附件表中,比如,你调用的字段完全来自附加表,则可以使用如下语句:

查看源码打印代码帮助
  1. {dede:sql sql=”SELECT url_bbs,url_product,price_eng,intro,image FROM dede_addon_saleproduct”}
  2. <li><a href=”[field:arcurl/]“>[field:image/]<span>[field:intro/]</span></a>
  3. <div><a href=”[field:url_bbs/]“>美国商品地址</a><a href=”[field:bbs_product/]“>论坛讨论</a>
  4. 成本价:[field:price_eng/]刀< /div></li>
  5. {/dede:sql}
  6. {dede:sql sql=”SELECT url_bbs,url_product,price_eng,intro,image FROM dede_addon_saleproduct”}
  7. <li><a href=”[field:arcurl/]“>[field:image/]<span>[field:intro/]</span></a><div>
  8. <a href=”[field:url_bbs/]“>美国商品地址</a>
  9. <a href=”[field:bbs_product/]“>论坛讨论</a>
  10. 成本价:[field:price_eng/]刀< /div></li>{/dede:sql}
复制代码


发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-5-2 10:49 , Processed in 0.042094 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表