2013-03-16 71 views
0

需要使用Zend \ Db \ Sql \ Select的帮助。无法弄清楚我做错了什么,它不会输出任何内容,也不会显示错误。Zf2使用Zend Db Sql Select

namespace Album\Model; 
use Zend\Db\Adapter\Adapter, 
    Zend\Db\Sql\Select; 

class AlbumTable 
{ 
    public function getAll() 
    { 
     $select = new Select('album'); 
     return $select->from(); 
    } 
} 

namespace Album\Controller; 

class AlbumController extends AbstractActionController 
{ 
    public function indexAction() 
    { 
     return new Viewmodel(array(
      'rows' => $this->albumTable->useSelect() 
     )); 
    } 
} 

// index.phtml 
foreach ($this->rows as $row) { echo $row->artist . '<br />'; } 

感谢

+0

您可能想要打开错误报告并显示php配置中的错误,以帮助解决错误。对于你正在调用你的控制器不存在的一个AlbumTable方法。看来你还没有Db适配器设置。我高度推荐使用入门指南,详细解释了所有这些。 – 2013-03-16 16:15:08

+0

这个方法$ this-> albumTable-> useSelect()来自哪里? – 2013-03-17 11:02:43

+0

谢谢Stoyan&艾登。我现在得到它的工作 – Ori 2013-03-21 03:12:41

回答

1

想我没有询问我建的字符串。

Zend\Db\Sql\Sql; 

class AlbumTable 
{ 
    public function getAll() 
    { 
     $sql = new Sql($this->adapter); 
     $select = new Select('album'); 

     $selectString = $sql->getSqlStringForSqlObject($select); 
     return $this->adapter->query($selectString, Adapter::QUERY_MODE_EXECUTE); 
    } 
} 
+0

谢谢,这帮助我! – 2013-07-13 00:40:51