Я пытаюсь создать таблицу информации в запросе к базе данных, используя Zend Framework 1.11, Zend_Db и Zend_Db_Select.
Изначально я пошел по этому пути, создав новый экземпляр моей таблицы и используя $ table-> select ().
Однако, когда я пошел, чтобы присоединиться к другой таблице, я получил сообщение об ошибке, что я не смог присоединиться, используя этот метод select (). Проведя некоторые исследования, я обнаружил, что мне пришлось вызывать метод select () моего адаптера по умолчанию, если я хотел сделать это JOIN. Казалось, просто.
На данный момент у меня есть модель, контроллер и представление, но я думаю, что что-то «теряется в переводе» между моим контроллером и моим представлением.
Вот модель (внутри Application_Model_DbTable_ActivityRequest):
public function getAllActivityRequests()
{
$db = $this->getDefaultAdapter();
$select = $db->select();
$select->from('activityrequest');
$select->where('isDeleted = ?','N');
$select->where('ReqType <> ?','Purchase Product');
$select->order('ReqTime DESC');
$query = $select->query();
$row = $query->fetchAll();
return $row;
}
И контроллер (Admin Controller):
public function getWorkAction()
{
$table = new Application_Model_DbTable_Activityrequest();
$row = $table->getAllActivityRequests();
$this->view->activityrequests = $row;
}
И (соответствующая часть) Просмотр (admin / get-work):
<?php foreach($this->activityrequests as $activity): ?>
<tr>
<td><?= $activity->CustomerID; ?></td>
<td><?= $activity->ReqType; ?></td>
<td><?= $activity->ReqTime; ?></td>
<td><?= $activity->PickupTime; ?></td>
<td><?= $activity->AddressID; ?></td>
<td><?= $activity->Notes; ?></td>
<td><?= $activity->HeardAbtUs; ?></td>
<td><?= $activity->isDeleted; ?></td>
</tr>
<?php endforeach; ?>
Когда я делаю var_dump из $ row в моей модели и в моем контроллере, я вижу массив, который я пытаюсь передать в представление. Как только я добираюсь до представления, я получаю эту ошибку на «необъекте».
Буду признателен за любую помощь.
Спасибо!