yii2:data 的相关模型在 Gridview
yii2:data of related model in Gridview
我有两个模型,即 MedicineRequestEntry 和 MedicineRequest。 MedicineRequestEntry 通过
与 MedicineRequest 相关
public function getMedicineRequests()
{
return $this->hasMany(MedicineRequest::className(),
['medicine_request_entry_id' => 'id']);
}
现在,在 MedicineReuestEntry 的网格视图中,我正在尝试使用两种替代方式使用关系从 MedicineRequest 模型中提取数据
喜欢
[
'attribute' => 'is_delivered',
'value'=> 'medicineRequests.is_delivered'
],
在这种方法中,我得到的值未设置。
和另一种方法:
[
'attribute' => 'is_delivered',
'value'=> '$data->medicineRequests->is_delivered'
],
在这种方法中,我收到如下错误:
获取未知属性:app\models\MedicineRequestEntry::$data->medicineRequests->is_delivered
现在我需要一些帮助,我做错了什么。
谢谢。
您应该使用回调函数,请参阅 the guide:
[
'value' => function ($data) {
$str = '';
foreach($data->medicineRequests as $request) {
$str .= $request->is_delivered.',';
}
return $str;
},
],
或者对于数组的第一个结果:
[
'value' => function ($data) {
return $data->medicineRequests[0]->is_delivered;
},
],
我有两个模型,即 MedicineRequestEntry 和 MedicineRequest。 MedicineRequestEntry 通过
与 MedicineRequest 相关public function getMedicineRequests()
{
return $this->hasMany(MedicineRequest::className(),
['medicine_request_entry_id' => 'id']);
}
现在,在 MedicineReuestEntry 的网格视图中,我正在尝试使用两种替代方式使用关系从 MedicineRequest 模型中提取数据
喜欢
[
'attribute' => 'is_delivered',
'value'=> 'medicineRequests.is_delivered'
],
在这种方法中,我得到的值未设置。 和另一种方法:
[
'attribute' => 'is_delivered',
'value'=> '$data->medicineRequests->is_delivered'
],
在这种方法中,我收到如下错误:
获取未知属性:app\models\MedicineRequestEntry::$data->medicineRequests->is_delivered
现在我需要一些帮助,我做错了什么。 谢谢。
您应该使用回调函数,请参阅 the guide:
[
'value' => function ($data) {
$str = '';
foreach($data->medicineRequests as $request) {
$str .= $request->is_delivered.',';
}
return $str;
},
],
或者对于数组的第一个结果:
[
'value' => function ($data) {
return $data->medicineRequests[0]->is_delivered;
},
],