您可以更改的ModelAdmin eported任何數據對象有以下字段...
的ModelAdmin變化......
class MyModelAdmin extends ModelAdmin {
...
static $managed_models = array(
'MyDataObject'
);
...
public function getExportFields() {
$modelClass = singleton($this->modelClass);
return $modelClass->hasMethod('getExportFields')
? $modelClass->getExportFields()
: $modelClass->summaryFields();
}
...
}
數據對象的變化......
class MyDataObject extends DataObject {
...
public function getExportFields() {
$exportFields = array(
//Add all "db" fields here
);
return $exportFields;
}
...
}
如果您希望將導出附加到其他按鈕,我建議您更改按鈕以鏈接到ModelAdmin導出csv鏈接
也許這會幫助你制定一個解決方案? https://github.com/silverstripe/silverstripe-userforms/blob/master/code/model/submissions/SubmittedForm.php。在用戶定義表單的最新版本中,當您查看提交時只會導出該Dataobjects數據時會添加一個導出按鈕。 –
感謝您的回答!但不幸的是,這並不適合我,因爲我沒有與要導出的字段具有has_many關係的數據對象。我只想導出數據對象的$ db字段。你有一個想法如何做到這一點? – iraira
是的,我注意到它導出關係,但如果它可以導出複雜的東西,可能有一種方法來修改它導出非關係的東西也:)。可悲的是,我當時沒有時間做一個實例。 –