onImport & onExport - landrisek/impala GitHub Wiki

Export

Define your own ExportService implementing Impala\IExportService and pass it as parameter to export method: /** @var MyExportService @inject */     public $exportService; public actionDefault($value) {     $this->grid->table('table')         ->export($exportService); } or pass boolean to use default Impala\ExportService: public actionDefault($value) {     $this->grid->table('table')         ->export(true); } to exclude column from export use @hidden,@unrender or @unexport annotation in select statment: ->select(['column' => 'table.column@unexport'])

Import

Define your own ImportService implementing Impala\IImportService and pass it as parameter to export method: /** @var MyImportService @inject */     public $importService; public actionDefault($value) {     $this->grid->table('table')         ->import($importService); }

Files (images, csv)

final class MyImageService implements Impala\IImport {     public function save(array $response): void {         $response['row'][$response['key'] . 'gallery']['Attributes']['data']['' . $size] = self::ASSETS . $response['file'];         $this->imagesRepository->addImage($response['primary']['Attributes']['value']); } final class MyImageService implements Impala\IImport {     public function save(array $response): void {          file_put_contents(self::ASSETS . $response['_name'], $response['_file']); }