2017-04-07 10 views
1

要するに、テーブルマシンがあり、SubCategory.idを指しているFKがある。関係がGiiによって正しく設定されている。ただし、Actionフィールドは必須ではないため、MachineのFK列をNULLに設定できます。YII2 - gridViewのNULL値を処理する - NULLの場合がある外部キーの列を表示する

[ 
    'attribute'=>'machine Sub-category', 
    'value' => function ($model) { 
    return $model->subCategory->subcat_name; 
    }, 

    ], 

上記のコードでは、FKがNULLでない場合にサブカテゴリ名が表示されます。 FKがNULLの場合でも、私はPHPのエラーを取得:非オブジェクト

のプロパティを取得しようとすると

私は、エラーが原因でNULL値であることを理解しています。 (私はNULLの代わりにいくつかの値を追加するとこのエラーが発生しないため)

NULL値を持つ可能性のあるFK列の場合、私のクエリはGridViewまたはDetailviewでどのように表示されるのですか?

答えて

2

サブカテゴリクイック返信用

[ 
    'attribute'=>'machine Sub-category', 
    'value' => function ($model) { 
    if (isset($model->subCategory)){ 
     return $model->subCategory->subcat_name; 
     } else { 
     return ''; 
     } 
    }, 
], 
+0

おかげscaisEdgeをnullである場合は、確認することができます。 – Rachna

+0

私の答えが正しければそれを受け入れられたものとしてマークしてください...どうぞこちらをご覧ください http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – scaisEdge

+0

可能であれば、これをチェックしてください(http://stackoverflow.com/questions/43062117/yii2-search-with-empty-param-throws-all-records) – Rachna

関連する問題