我有访问和咨询表都通过表格患者相关。 访问和咨询表有外键patient_id。我必须 在单个编辑操作上编辑这两个表(访问和咨询) 在编辑视图中,应显示两个表数据。 我必须使用什么型号? 谢谢.........
答案 0 :(得分:0)
这三个表应该有单独的模型,并通过Cake PHP Associations进行关联。
在您的情况下(据我所知),您有以下关联:
Patient hasMany Visit (via Visit.patient_id)
Patient hasMany Consult (via Consult.patient_id)
Visit belongsTo Patient (via Visit.patient_id)
Consult belongsTo Patient (via Consult.patient_id)
如果您在三个模型(Patiend,Visit and Consult)中的相应位置定义了这些,并且如果您想要查看所有这些数据,请遵循CakePHP Conventions。在您可以执行的Patient Controller edit()操作中:
public function edit($id = null) {
$this->Patient->id = $id;
if ($this->Patient->exists()) {
$patient = $this->Patient->find('first', array('conditions' => array('id' => $id)));
}
}
现在$ patient将包含患者记录及其所有相关记录 以一个很好的阵列结构访问和咨询模型(当然,如果患者存在这个ID)。
根据您的说法我不确定您是否了解CakePHP模型关联。 看看链接。
希望这有帮助。
干杯, 鲍里斯拉夫。