2014-11-28 2 views
0
$l = $this->Manager->query("SELECT leave_application.id 
     from leave_application INNER JOIN emp_managers ON (leave_application.employee_id = emp_managers.employee_id) 
     WHERE emp_managers.manager_id =" . $this->Session->read('Auth.Manager.id') 
     ." AND leave_application.approve_1 !=". $id ." AND leave_application.approve_2 != ". $id 
     ." AND leave_application.approve_3 != ". $id); 

편집
이 내가 시도했지만 작동 did'nt 무엇인가 :어떻게 CakePHP에서의 사용자 지정 쿼리를 쪽수를 매기다

function paginate($conditions, $fields, $order, $limit, $page, $recursive, $extra) 
{ 
    return $this->query("SELECT leave_application.id as leaveID, leave_application.approve_1,leave_application.employee_id, 
     leave_application.approve_2, leave_application.days_desired ,leave_application.approve_3,leave_application.leave_from, 
     leave_application.leave_to, employees.id, employees.firstname , employees.lastname, emp_managers.employee_id as empmanagers_id 
     from leave_application INNER JOIN emp_managers ON (leave_application.employee_id = emp_managers.employee_id) 
     INNER JOIN employees on (employees.id = emp_managers.employee_id) 
     WHERE emp_managers.manager_id =" . CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_1 !=". CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_2 != ". CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_3 != ". CakeSession::read('Auth.Manager.id')); 
} 

function paginateCount($conditions, $recursive, $extra) 
{ 
    return $this->query("SELECT COUNT(*) as count 
     from leave_application INNER JOIN emp_managers ON (leave_application.employee_id = emp_managers.employee_id) 
     INNER JOIN employees on (employees.id = emp_managers.employee_id) 
     WHERE emp_managers.manager_id =" . CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_1 !=". CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_2 != ". CakeSession::read('Auth.Manager.id') 
    ." and leave_application.approve_3 != ". CakeSession::read('Auth.Manager.id')); 
} 
+0

체크 아웃 - http://stackoverflow.com/questions/25778333/cakephp-afterfind-and-pagination-order-not-working –

답변

0

는 동일한 쿼리와 컨트롤러의 모델에 이러한 방법을 추가 제한 키워드가없는

function paginate($conditions, $fields, $order, $limit, $page, $recursive, $extra) 
{ 
    return $this->query('SELECT ...'); 
} 

function paginateCount($conditions, $recursive, $extra) 
{ 
    return $this->query('SELECT COUNT(.....'); 
} 
+0

내가 모르겠다. – user3702843

+0

케이크 PHP에서 일반적으로 사용하는 페이지 매김을 사용하십시오. 이 2 가지 방법을 모델 (Manager)에 추가하는 것보다 맞춤 쿼리를 사용하여 페이지 매김을 만들고 싶다면 따라서 기본 페이지 매김 방법은이 특정 모델에 우선 적용됩니다. –

+0

쿼리는 실제로 관리자 모델 – user3702843

관련 문제