0

以下はSQLクエリです。ここでは 3 つのテーブルが使用されます。EMPLOYERCOMPANYPROFILEJOBSEEKERFOLLOWER

$c=new Criteria();
$c->add(EmployerPeer::ITEMPLOYERSTATUS, 1);
$c->addJoin(EmployerPeer::IDEMPLOYER, CompanyprofilePeer::IDEMPLOYER);
EmployerPeer::addSelectColumns($c);
$c->addJoin(EmployerPeer::IDEMPLOYER, JobseekerfollowingPeer::IDEMPLOYER);
JobseekerfollowingPeer::addSelectColumns($c);
$c->addAsColumn('count', 'COUNT(EMPLOYER.IDEMPLOYER)');
$c->addGroupByColumn(CompanyprofilePeer::VCCOMPANYNAME);

//echo $c->toString(); exit;

$pager = new sfPropelPager('Employer', E4sConfig::getRecordsPerPage());
$pager->setCriteria($c);
$pager->setPage($this->getRequestParameter('page', 1));
$pager->init();
$this->pager=$pager;

出口を削除して SQL クエリを出力し、それを実行すると、完全に取得されます。

ここで、ページネーションのためにページャーに渡す必要があります。しかし、これの問題はEmployer、新しいオブジェクトの作成中にクラスが使用された場合sfPropelPager、そのクラスの要素のみが生成されることです。他の 2 つのテーブル/クラス (会社のプロフィールと求職者フォロワー) の詳細はわかりません。どちらのテーブルで使用しても同じことが起こります。

私がまさに望んでいるのは、クエリを実行することだけです。これはどのように達成できますか?sfPropel オブジェクトで結合とカスタム クエリが使用されているいくつかの良い例を教えてください。

ありがとう

4

0 に答える 0