私は理解できる方法でこの質問をしたいと思います。私は1つのテーブル(jobschedule)を扱っているアプリケーションに取り組んできました。だから、私はモデル/ Jobschedule.php、モデル/ JobscheduleMapper.php、コントローラ/ JobscheduleController.php、ビュー/スクリプト/ jobschedule/*持ってPHTMLファイルにZend Frameworkテーブルの関係 - アプリケーション内の複数のテーブルから選択
をだから私のコントローラで、私はこのような何かをやります:。
私のマッパーで$jobnumber = $jobschedule->getJobnum();
$jobtype = $jobschedule->getJobtype();
$table = $this->getDbTable();
public function listAction()
{
$this->_helper->layout->disableLayout();
$this->view->jobnum = $this->getRequest()->getParam('jobnum', false);
$this->view->items = array();
$jobschedule = new Application_Model_Jobschedule();
$jobschedule->setJobnum($this->view->jobnum);
$mapper = new Application_Model_JobscheduleMapper();
$this->view->entries = $mapper->fetchAll ($jobschedule);
}
、その後、IIのようなものを実行します。そして、私の見解で、私は$エントリを操作することができます
$resultSet = $table->fetchAll($table->select()->where('jobnum = ?', $jobnumber)->where('jobtype = ?', $jobtype));
$entries = array();
foreach ($resultSet as $row) {
$entry = new Application_Model_Jobschedule();
$entry->setJobnum($row->jobnum)
->setJobtype($row->jobtype)
->setJobdesc($row->jobdesc)
->setJobstart($row->jobstart)
->setJobend($row->jobend)
->setJobfinished($row->jobfinished)
->setJobnotes($row->jobnotes)
->setJobid($row->jobid);
$entries[] = $entry;
}
return $entries;
}
。さて、私が今直面する問題は、 'jobno'という列があるjobindexという別のテーブルがあるということです。その 'jobno'カラムは 'jobschedule'テーブルの 'jobnum'カラムと同じレコードを保持します。 jobindex.jobno = joschedule.jobnum(1234はjobno/jobnumなど)の 'jobindex'テーブルの 'store_type'カラムの値を調べる必要があります。誰かがここで私を助けてくれますか?ジョブインデックスマッパとコントローラを作成する必要がありますか?もしそうなら、それは終わりました...私はただ一度に両方のテーブルを操作し、必要なレコードを取得する方法を知りません。そして、そのコードをどこに置くべきか...私のコントローラーに?
私はすぐにそれを試してみるつもりです。ご協力いただきありがとうございます。お待ちください。 –
私は本当に自分自身を混乱させたと思う。私はもう一度説明をして、あなたが何か違うものを考え出すかどうかを見ます。 jobscheduleにjobnumという列があり、jobindexテーブルにjobnoという列があります。これらはそれぞれ同じ値を保持します。 jobindexテーブルにはstore_typeという行もあります。私はjobnoとjobnumが一致するすべてのレコードを見つけたいと思います。store_type ==私のPOSTで渡したいくつかのパラメータです。したがって、?store_type = WMの場合、jobscheduleテーブルのすべてのレコードをページに表示するとします。ここで、jobindexテーブルのstore_typeはWMと等しく、レコードのjobno = jobnumはjobscheduleからです。 –
できるだけ具体的にしようとしています。センス。もしあなたが私に説明してもらうことが必要なのなら、私はそれを説明してくれるでしょう...これは数日間ナッツを運転しています。 –