Mam do czynienia z problemem odrodzonej. Napisałem kod do stronicowania. Wszystko działa zgodnie z oczekiwaniami, ale tylko warunki nie działają (tylko niektóre warunki). Oto mój kod do stronicowania.Tort php paginator issue
//declaration
public $paginate = array(
'limit' => 50,
'paramType' => 'querystring'
);
//use in action
$this->paginate['ApiLog'] = array('limit' => 50, 'order' => 'ApiLog.id DESC', 'paramType' => 'querystring');
$this->paginate['ApiLog']['conditions'] = array('ApiLog.log_type' => 2);
$this->paginate['ApiLog']['joins'] = array(
array(
'table' => 'users',
'alias' => 'User',
'type' => 'LEFT',
'conditions' => array('User.id = ApiLog.user_id')
)
);
$this->Paginator->settings = $this->paginate['ApiLog'];
$apilogs = $this->Paginator->paginate('ApiLog');
Ten kod jest prefektem pracy na środowisko programistyczne i powrót dzienników, które ma typ 2, ale w produkcji powróci tylko dzienniki, które ma typ 1. Spędziłem cały dzień, aby dowiedzieć się problem. Jeśli dodam inny warunek w conditions array
, który działa, ale nie ma wartości log_type
. Drukuję dzienniki zapytań, w where clause
zawsze pokazują log_type = '1'
Mam również wyczyszczone pamięci podręcznej. Każda pomoc doceniona, dzięki.
Spróbuj usunąć folder 'tmp/cache' – om1