У меня есть модель Zend Framework:
class User extends Zend_Db_Table_Abstract {
protected $_name = 'users';
protected $_primary = 'id';
protected $_dependentTables = array('UserItem');
public function refresh($) {
$items = $this->findDependentRowset('UserItem', 'items');
// do stuff with each item
print_r($items);
die();
}
}
У меня также есть связанная модель:
<?php
class UserItem extends Zend_Db_Table_Abstract
{
protected $_name = 'user_items';
protected $_referenceMap = array(
'items' => array(
// user_id is the name of the field on the USER_ITEMS table
'columns' => 'user_id',
'refTableClass' => 'User',
// id is the name of the field on the USERS table
'refColumns' => 'id'
)
);
}
?>
Я бы хотел, чтобы у меня была возможность позвонить User->refresh();
, и у меня получилось бы несколько причудливых вещей. Но ошибка
Fatal error: Call to undefined method FbUser::findDependentRowset()
Что говорит мне о том, что, хотя я думаю, я делаю все правильно в соответствии с документацией Zend http://framework.zend.com/manual/en/zend.db.table.relationships.html Я что-то упустил.
Если это имеет значение, при первом запуске список элементов будет пустым, затем я "вставлю" целую кучу элементов - в будущих запусках я сравню все элементы и обновлю только те, которые отличаются. Хм... нет, это определенно не актуально :)