2012-02-11 15 views
0

私はthomas.meryの投稿と似たようなことをしようとしていますが、動作させることはできません。違う?CGridViewのYii関係でグループ化された集計SQLを使用

私はこれらのテーブルを持っている:

  • イベント
    -id

  • invitation_code
    -code
    -event(event.idするFKポイント)

イベントモデルには次の関係があります。
'InvitationCodes' => array(self::HAS_MANY, 'InvitationCode', 'event')

私は::イベントにGIIによって生成された検索()これを追加しました:
$criteria->with = array('InvitationCodes' => array('select' => 'COUNT(*) as qtty'));
$criteria->together = true;
$criteria->group = 't.id';

をそしてイベントのCGridViewに、私はqttyフィールドを表示するために弱々しいので、私には、列内:
'InvitationCodes.qtty'

列はヘッダー付きで出力されますが、値はありません。私は間違って何をしていますか?

答えて

1

あなたのInvitationCodesモデルにパブリックプロパティ$ qttyを追加し、(コンフィギュレーションのような文字列またはInvitationCodes.qtty)$ theResultRow-> InvitationCodes-> qttyまでの値を得ることができ

しかし、あなたの場合は、使用して統計的なクエリの関係ははるかに良いです:http://www.yiiframework.com/doc/guide/1.1/en/database.arr#statistical-query

+0

おっと、それほど遠くまでは読んでいませんでした。愚かな私。ありがとう! – Petruza

関連する問題