0
hasManyToMany가있는 모델에서로드하는 데 시간이 오래 걸리는 문제가 있습니다.Phalcon hasManyToMany 데이터로드가 매우 느립니다.
class TvguideChannel extends Model{
public function initialize() {
$this->setSource('tvguide_channel');
$this->setConnectionService('db');
$this->hasManyToMany(
'code',
__NAMESPACE__.'\Tvguide',
"ch_code",
'ch_code',
__NAMESPACE__.'\Chgrtv',
'ch_code',
['alias' => 'tvguide']
);
//$this->hasMany('code', __NAMESPACE__.'\Chgrtv', 'ch_code', ['alias' => 'tvgg']);
}
public function getSource() {
return 'tvguide_channel';
}
}
표 Tvguide 가지고 이상의 레코드 (1kk +),하지만 TvguideChannel 228 개 기록
나는 테이블 TvguideChannel에서 출력 레코드를 원하는가 :
나는 코드가
$data = TvguideChannel::find();
을 페이지를 5 초 더로드합니다. 관계 hasManyToMany를 사용하여 모든 레코드를 올바르게 출력하는 방법은 무엇입니까?
에서 하나의 패키지로 분산? – Timothy
예 물론! – Jajaja
관련 모델은 지연로드됩니다. 코드가 요청할 때까지 실제로 쿼리되지 않습니다. 따라서 관계를 설정한다고해서 관련된 모든 기록이 꺼내지는 것은 아닙니다. 그 관계를 제거하면 페이지로드 시간이 줄어들면 놀라실 것입니다. 'microtime()'에'TvguideChannel :: find()'를 싸서 지연을 일으키는 지 확인해 봤습니까? – Pickle