0

在 IndexController 中,我从表中检索数据并将它们发送到视图。在视图中,我执行 foreach 循环并显示它。需要从数据库中获取一种类型的数据,因此需要在视图中链接到数据库来获取它。

<?php foreach ($this->datas as $data ): > 
  <div id="<?php echo $data->data_id ?>"></div>
  <?php 

$Data = Zend_Db::factory('pdo_mysql', $config);

    $select = $Data->select()
            ->FROM('data')
            ->WHERE('data_id = ?',$data->anchor); 
       $name = $Data->fetchRow($select);
   ?>

<span class="nick_name"><?php echo $name?></span>  

<?php endif; ?>

如何避免在视图中连接到数据库?

4

1 回答 1

1

简单:只是不要这样做。

只需将该数据库逻辑从您的视图中移开即可。在控制器或(甚至更好)模型中执行一个foreach循环,为每个元素获取您想要的数据。或者,如果可能,使用 aJOIN直接组合结果。

于 2012-06-29T14:27:57.957 回答