Php Phalcon中的模型层次结构-访问子模型时找不到父模型的属性
我正在开发PHPHPHALCON,Xampp服务器。我的模型课形成了继承权 我有一个UsersAbstract类,它有一些通用属性,如全名、电子邮件ID等。 然后我派生了类UserOfficers,它有更多的属性,比如职业等。然后我有一个孙辈类,它从UserOfficerOfficer继承而来,名为OfficealDoctor。 UsersAbstract类也是UserPatients的父类 当我想访问UsersAbstract和UserPatients时,我使用了以下代码:Php Phalcon中的模型层次结构-访问子模型时找不到父模型的属性,php,mysql,phalcon,Php,Mysql,Phalcon,我正在开发PHPHPHALCON,Xampp服务器。我的模型课形成了继承权 我有一个UsersAbstract类,它有一些通用属性,如全名、电子邮件ID等。 然后我派生了类UserOfficers,它有更多的属性,比如职业等。然后我有一个孙辈类,它从UserOfficerOfficer继承而来,名为OfficealDoctor。 UsersAbstract类也是UserPatients的父类 当我想访问UsersAbstract和UserPatients时,我使用了以下代码: $select_p
$select_patient = "Select "
."UserPatients.Patient_ID, "
."UserPatients.Unique_ID, "
."UsersAbstract.Full_Name, "
."UsersAbstract.Age, "
."UsersAbstract.Gender, "
."UsersAbstract.City, "
."UsersAbstract.Country FROM UserPatients JOIN UsersAbstract WHERE UsersAbstract.Unique_ID = UserPatients.Unique_ID "
."And UsersAbstract.Availablity_Flag = 1";
$patients = $this->modelsManager->executeQuery($select_patient);
$this->current_patient = $patients[0];
这工作做得很好。现在我想从UserOfficers访问一个属性,下面是我的代码:
$id = $user->Unique_ID;
$select_doctor = "Select UserOfficials.Occupation from UserOfficials WHERE UserOfficials.Unique_ID = :uid:";
$occ = $this->modelsManager->executeQuery($select_doctor, array("uid" => $id));
此代码给出了以下错误:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'usersabstract.Occupation' in 'field list'
我的问题很简短——为什么?我正在访问表UserOfficers而不是UsersAbstract
注:
我的表和相应的类的名称如下:
Class -------------- Table
UsersAbstract ------ UsersAbstract
UserOfficials ------ User_Officials
UserPatients ------- User_Patients
我知道对应数据库表的驼峰大小写名称必须是,但如果一个查询有效,那么为什么另一个查询无效?我已经解决了这个问题,我必须在列的名称周围加上单引号,即 $select_doctor=select userofficers.occulation from userofficers WHERE userofficers.Unique_ID=:uid: 在这之后,它没有给出更多的错误