关于spLinker和spPager同时使用的问题

#1 ltotal

如题, 一对一关联, $model_instance->spLinker()->spPager($this->spArgs('p', 1), 25)->findAll(); 这句查询的结果并没有包含关联表的键名键值, 而把spPager去掉后就正常, 请问可能的原因是什么, 怎么解决?

2010-04-02 18:12:51

#2 jake

由于spLinker的特殊结构,所以在spLinker和spPager同时使用的情况下,要先spPager,然后再使用spLinker的run函数。
如winblog的wblog.php内105行:

                $result = $fansObj->spPager($this->spArgs('page', 1), 10)->findAll($condition,'fansid DESC');
                $this->pager = $fansObj->spPager()->getPager();
                $this->fanslist = $fansObj->spLinker()->run($result);
也就是先通过spPager来得到$result,然后再$fansObj->spLinker()->run($result);来得到关联的结果。

2010-04-02 20:33:13