0

嗨,伙计们,我正在寻求您的帮助。申请人申请名额,详细信息保存在申请人表中,默认状态为等待。管理员接受申请表,等待接受或拒绝。当学生被接受时,他的详细信息应自动保存到学生表中。申请者表和学生表有 26 个共同字段,国民 id 在两个表中是共同且唯一的,但它不是两个表中的主键。

a) 在这种情况下,是否可以批准学生申请并将他们的详细信息发布到学生详细信息?

b)我如何链接这两个表?是否可以使用不是 cakephp 主键的唯一键链接表?

c) 我如何将申请者详细信息中的详细信息转移到学生详细信息?

为了将申请人详细信息中的数据发布给学生,我已经在我的控制器中尝试过这个,但我遇到了致命错误。我只尝试了两个字段进行测试。

if($this->request->data['submit']=='Approve') {
    $this->ApplicantsDetail->StudentDetail->set(array(
        'reg_number' => $regnumber,
        'code'=>$code
    ));
}

为了批准学生的申请,我使用了以下代码

if($this->request->data['submit']=='Approve') { 
    $code=$this->request->data['ApplicantsDetail']['code'];

    for($k=0;$k<sizeof($this->request->data['ApplicantsDetail']['id']);$k++){
        $id=$this->request->data['ApplicantsDetail']['id'];
        $newcode=$this->ApplicantsDetail->ProgrammeChoice->find('list', array(
            'fields'=>array('applicants_detail_id','choice','programme_code'),
            'conditions'=>array('ProgrammeChoice.programme_code'=>$code,'ProgrammeChoice.choice'=>1)
        ));
        $tau1 = array('ApplicantsDetail.statu_id' => '1');
    }
}   
4

1 回答 1

0

当管理员批准记录时,根据需要通过 id 或代码获取该记录的数据 -

$applicationData        = $this->ApplicantsDetail->findById($applicationId);

或者

$applicationData        = $this->ApplicantsDetail->findByCode($applicationCode);

然后按如下方式创建一个数组 -

$studentData['StudentDetail'] = $applicationData['ApplicantsDetail'];

然后将记录保存在学生表中。

$this->StudentDetail->save($studentData);
于 2012-07-17T11:31:18.850 回答