我有Problems
模型,每个问题都与Category
模型有关系,所以每个问题都有一个类别。这是我的代码,它很好地将问题和类别名称返回到我的视图中。
public function getPaginatorAdapter($category = null) {
$select = $this->select();
$select->setIntegrityCheck(false);
$select->from(array('p' => 'problems', 'c' => 'categories'));
$select->join(array('c' => 'categories'), 'c.id = p.category', array('c.category AS category_name'));
$select->order('p.created DESC');
if($category !== null) {
$select->where('p.category = ?', $category);
}
return $adapter = new Zend_Paginator_Adapter_DbTableSelect($select);
然后我创建了额外的Tags
表和ProblemsTags
多对多表,所以每个问题都可以有很多标签。我的问题是如何将带有问题相关标签的数组从 ProblemsTags 表传递给分页器的每个元素?
在普通的 PHP 中,我只会遍历所有问题,并且对于每个问题,我都会对标签进行数据库查询。如何在 Zend Framework 中实现这一点?