导出 Sonata Admin 时的自定义列名称
Custom columns name when exporting Sonata Admin
我正在尝试导出一些列,其中很少有自定义值,例如(0=已关闭,1=待定,2=正在修订,3=已批准)。可以导出它们的名称:Closed / Pending 等而不是 0,1,2,3...?怎么样?
我尝试使用 Sonata 中的 getExportFields()
,但我所做的只是更改标签。
Id Name Status
1 Item1 0
2 Item2 3
到
Id Name Status
1 Item1 Closed
2 Item2 Approved
是的,为每一列定义一个新的 属性 和实体中的一个方法,它将 return 你为每个值的文本,如
protected $someColumnValueAsText;
public function getSomeColumnValueAsText(){
if($this->status == 0){
return 'Closed';
}
if($this->status == 1){
return 'Pending';
}
//... and so on
}
并在 getExportFields
中将您的新 属性 定义为
public function getExportFields(){
return array(
'Status'=>'someColumnValueAsText',
....// Other properties
);
}
我正在尝试导出一些列,其中很少有自定义值,例如(0=已关闭,1=待定,2=正在修订,3=已批准)。可以导出它们的名称:Closed / Pending 等而不是 0,1,2,3...?怎么样?
我尝试使用 Sonata 中的 getExportFields()
,但我所做的只是更改标签。
Id Name Status
1 Item1 0
2 Item2 3
到
Id Name Status
1 Item1 Closed
2 Item2 Approved
是的,为每一列定义一个新的 属性 和实体中的一个方法,它将 return 你为每个值的文本,如
protected $someColumnValueAsText;
public function getSomeColumnValueAsText(){
if($this->status == 0){
return 'Closed';
}
if($this->status == 1){
return 'Pending';
}
//... and so on
}
并在 getExportFields
中将您的新 属性 定义为
public function getExportFields(){
return array(
'Status'=>'someColumnValueAsText',
....// Other properties
);
}