所以基本上得到了laravel项目,并在excel中导出表。我使用this进行导出。直到现在我只从数组或我的情况下导出。
public function exportGames()
{
$export = Games::all();
Excel::create('Games Data', function($excel) use($export){
$excel->sheet('Games', function($sheet) use($export){
$sheet->fromArray($export);
});
})->export('xlsx');
}
然而,这会返回完整的表数据,其中包括一些要消失的字段(时间戳等)。此外,无法显示关系表(仅在页面上的实际表中)。在文档中花费数小时仍然不了解如何操作。想撕掉我的头发。如何修改要导出的列。谢谢你的建议。
答案 0 :(得分:0)
html表
@foreach($games as $game)
<tr>
<td>{{ $game->client_game_id }}</td>
<td>{{ $game->gameid }}</td>
<td>{{ $game->description }}</td>
<td>{{ $game->game_type }}</td>
<td>{{ $game->db_name }}</td>
<td>{{ $game->short_name }}</td>
<td>
<a href="" role="button" data-toggle="modal"
data-toggle="modal"
data-target="#updateGameModal"
data-id="{{ $game_client->client_game_id }}"
data-name="{{ $game_client->client_game_name }}"
>
<span class="label label-warning">Edit</span>
</a>
</td>
</tr>
@endforeach
控制器
$games = Games::all();
return view('settings.gameservers', ['games' => $games]);
答案 1 :(得分:0)
看起来很简单:
$export = Games::select(['client_game_id', 'client_game_name', 'gameid', 'description', 'game_type', 'db_name', 'short_name'])->get();
您只会在导出的XLS文件中看到这些列。
答案 2 :(得分:0)
您可以这样做
$export = Games::all();
Excel::create('Games Data', function($excel) use($export){
$excel->sheet('Games', function($sheet) use($export){
foreach ($export as $key => $value) {
$exports[] = array('email' => $value['email'], 'name' =>$value['name']);
}
$sheet->fromArray($exports);
});
})->export('xlsx');