2 回答

TA貢獻1794條經驗 獲得超8個贊
事實證明,因為我的查詢有一個 groupBy 子句,我需要在導出類上實現自定義查詢大小。我不明白為什么這是一個問題,但是在我添加之后,作業被添加到隊列中并且處理得很好。所以我補充說:
use Maatwebsite\Excel\Concerns\WithCustomQuerySize;
class ExcelExport implements ...., WithCustomQuerySize
//......
public function querySize(): int
{
$query = //......
$size = $query->count();
return $size;
}
我希望這對某人有所幫助,這樣他們就不必經歷我所做的頭痛。

TA貢獻1830條經驗 獲得超3個贊
排隊的可導出文件以塊的形式處理;每個塊都是由 QueuedWriter 推送到隊列的作業。對于實現 FromQuery 問題的可導出文件,作業數是通過將 $query->count() 除以塊大小來計算的。
#何時使用
根據 query() 方法的實現(例如,當使用 groupBy 子句時),前面提到的計算可能不正確。
如果是這種情況,您應該使用 WithCustomQuerySize 關注點來提供查詢大小的自定義計算。
在此處閱讀更多信息https://docs.laravel-excel.com/3.1/exports/queued.html#when-to-use
- 2 回答
- 0 關注
- 221 瀏覽
添加回答
舉報