当前位置: 代码迷 >> SQL >> DEDE用{dede:sql}标签掏出当前文档的附加表中的内容
  详细解决方案

DEDE用{dede:sql}标签掏出当前文档的附加表中的内容

热度:70   发布时间:2016-05-05 12:02:41.0
DEDE用{dede:sql}标签取出当前文档的附加表中的内容

最近在用DEDE做项目,遇到一个需求是要在article_image.htm模板中直接取出附加表addonimages中的某一记录的imgurls字段的内容。而这条记录是不断变化的,比如我点击了《武夷山》图集,那么article_image.htm中就要读取aid=94这条记录的imgurls字段,比如我点击了《丝瓜架》图集,那么article_image.htm中就要读取aid=90这条记录的imgurls字段,以为图片文章模板只有一个,也就是说article_image.htm读取的内容随着我选择的图集而变动,即aid需要动态获取。

获取aid字段的值就让我纠结了很久,最后发现很简单,模板中获取当前文档的id  {dede:field.id/} ,只要这一句就行了,dede标签还是用的不熟练啊。

起初我是这么写的:

{dede:loop table='#@__addonimages' if="aid={dede:field.aid/}"}[field:imgurls runphp='yes']echo '<pre>';echo $GLOBALS['a'][email protected];echo '</pre>';[/field:imgurls]{/dede:loop}

实验失败,原因很简单,dede标签不能嵌套使用!({dede:channelArtlist}标签除外)

因此只能换一个标签了:

{dede:sql sql='SELECT imgurls FROM #@__addonimages where aid=~aid~'}[field:imgurls runphp='yes']echo '<pre>';echo $GLOBALS['a'][email protected];echo '</pre>';[/field:imgurls]{/dede:sql}
浏览器输出成功,事实证明,{dede:sql}很强大!



  相关解决方案