2013-02-02 3 views
0

나는 회사에서 일하고있는 모든 직원들을 나열한 페이지가 있습니다. 사용자 모델에 virtual fields을 추가 할 때까지 항상 정상적으로 작동합니다.가상 필드 추가 후보기 목록보기 - cakePHP

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'HrEmployee.name' 
in 'field list' 

SQL Query: SELECT `User`.`id`, `User`.`username`, `User`.`password`, 
`User`.`hr_employee_id`, `User`.`group_id`, `User`.`created`, `User`.`modified`, 
(CONCAT(`HrEmployee`.`name`, " ", `HrEmployee`.`surname`, " (", 
`HrEmployee`.`jobTitle`, ")")) AS `User__fullname` FROM `intraweb_db`.`users` 
AS `User` WHERE `User`.`hr_employee_id` = (182) 

내가 CakePHP의 새로운 오전과 같은 문제를 해결하기 위해 노력 해왔다 :

는 이제 나에게 다음과 같은 오류를주고 있어요. 그러나 나는 고군분투하고있다. 아무도 내가 뭘 잘못하고 있다고 말할 수 있습니까?

+0

'HrEmployee' 테이블을 쿼리에 정의하지 마십시오. – Jon

답변

0

좋아, 그럼 난 그냥 $ hasmany에서 사용자 참조를 제거하여 해결. 우리는 그 페이지를 부를 필요가 없으므로 괜찮습니다.

이제 작동합니다.

0

여기서 HrEmployee은 다른 테이블입니다.

SELECT 
    u.id, u.username, u.password, 
    u.hr_employee_id, u.group_id, u.created, u.modified, 
    (
     CONCAT(HrEmployee.name, " ", HrEmployee.surname, " (", HrEmployee.jobTitle, ")") 
    ) AS u__fullname 
FROM intraweb_db.users AS u 
# need to join HrEmployee via related field with users 
JOIN HrEmployee ON (HrEmployee.RELATED_FIELD = u.RELATED_FIELD) 
WHERE u.hr_employee_id = (182) 
+0

Ok는 cakePHP에 의해 생성됩니다. 그래서 이것을 어디에 넣을지 전혀 모르겠습니다. 사용자 모델에서 가상 필드를 지정할 때까지 쿼리가 100 % 정상적으로 작동했습니다. 이제는 목록을 볼 수 있지만 한 사람을 보려고하자마자 죽습니다. – Albert