1

私はこのようなデータベースを持っています

==== cis_policy_registration====
id
policy_id
email_id
policy_start_date


==== cis_policy_family_details===
id
policy_id
is_main_applicant
firstname
lastname
gender

モデル間の関係をpolicy_id(両方のテーブル)で作成する方法、登録モデルで姓と名を取得し、主な申請者を確認したい

CGridView にリストする必要がある

誰がこの問題を解決できますか

前もって感謝します

4

1 に答える 1

2

これら 2 つのテーブル間の関係は、「メイン」モデル (ポリシー) から処理する必要があるため、ポリシー モデル クラスには次のものが必要です。

'policy_reg' => array(self::HAS_ONE, 'PolicyRegistration', 'policy_id'),
'policy_details' => array(self::HAS_ONE, 'PolicyDetails', 'policy_id'),

その後:

$policy = Policy::model()->with(array('policy_details'))->findByPk($pk);
$policy->policy_details->is_main_applicant;
...

CGridView では、次のようにリレーショナル値を出力できます (ポリシー モデルから CActiveDataProvider オブジェクトを送信した後)。

'policy_details.firstname'

また

array(
    'name'=>'Firstname',
    'value'=>'$data->policy_details->firstname',
),
于 2012-08-06T07:47:51.330 に答える