役職。私はここで、モデルを構築し始めている抽象ZendのDBテーブルを使用して取得Zend_Db_Table_Abstractロード入社モデル
クラスがされています
ORM_Post
class ORM_Post extends Zend_Db_Table_Abstract {
protected $_name = 'Post';
protected $_dependentTables = array('ORM_Post_Client');
}
ORM_Client
class ORM_Client extends Zend_Db_Table_Abstract {
protected $_name = 'Client';
protected $_dependentTables = array(
'ORM_Post_Client'
);
}
ORM_Post_Client
class ORM_Post_Client extends Zend_Db_Table_Abstract {
protected $_name = 'Post_Client';
protected $_referenceMap = array(
'post' => array(
'columns' => 'post_id',
'refTableClass' => 'ORM_Post',
'refColumns' => 'id'
),
'client' => array(
'columns' => 'client_id',
'refTableClass' => 'ORM_Post_Client',
'refColumns' => 'id'
)
);
}
私がやりたいことは、ポストのインスタンスを呼び出して、クライアントのインスタンスを読み込んで関連するすべてのポストをロードすることに関連するクライアントをロードすることです。
だから私はこのでした:
$post = new ORM_Post();
$results = $post->fetchAll();
foreach ($results as $key => $result){
$row = $results->current();
$client = $row->findDependentRowset('ORM_Post_Client','client');
}
を、私は リファレンスルール「クライアント」私は時間のためにこれと戦ってきたと私は間違っているつもりだ場所を確認することはできませんテーブルORM_Post
を参照していない取得します。クライアントのPost_Clientジョインを宣言してモデルをポストしますか?アドバイス男性のための
$post = new ORM_Post();
$results = $post->fetchAll();
$return = array();
foreach ($results as $result){
$row = $post->find($result->id)->current();
$return[$result->id] = $row->toArray();
$return[$result->id]['clients'] = $row->findManyToManyRowset('ORM_Client', 'ORM_Post_Client')->toArray();
}
return $return;
おかげで、あなたはORM_Post_Client
に正しい軌道
ありがとうございます。しかし、それは問題を解決しません。私が取得: リファレンスルール「クライアント」の表を参照していないORM_Post – azz0r
はたぶん私は –