#1 jake
SpeedPHP框架的spLinker表间关联,获取的数据在模板中可以通过嵌套循环的方式来显示。
我们以前面一对多的关联介绍的例子,讲解如何在模板中显示关联的结果。一对多关联例子
在这文章中,返回的一对多关联数据如下:
Array
(
[0] => Array
(
[user_id] => 12
[user_name] => 灰太狼
[guestbook] =>
)
[1] => Array
(
[user_id] => 14
[user_name] => 小羊羊
[guestbook] =>
)
[2] => Array
(
[user_id] => 16
[user_name] => 羊村长
[guestbook] => Array
(
[0] => Array
(
[gb_id] => 55
[contents] => 大家好我是村长
[user_id] => 16
)
[1] => Array
(
[gb_id] => 56
[contents] => 下面我来说两句
[user_id] => 16
)
[2] => Array
(
[gb_id] => 57
[contents] => 以下省略一万五千字
[user_id] => 16
)
)
)
)
上面是在控制器中dump出来的效果。那么在模板中该如何做呢?
<{foreach from=$results item=dc}>用户:<{$dc.user_name}>
<{if $dc.guestbook}>
留言:
<{foreach from=$dc.guestbook item=thegb}>
<{$thegb.contents}>
<{/foreach}>
<{else}>
他暂无留言
<{/if}>
<{/foreach}>
从上面的模板代码我们看到,在判断$dc.guestbook存在数据后,就将$dc.guestbook进行循环输出,循环的过程和前面的循环是一样的。
2012-08-04 22:50:26