Это предупреждение добавляется, когда Laravel внутренне использует enforceOrderBy
, который определен внутри Illuminate/Database/Query/Builder
.
Каждый раз, когда вы используете чанк в построителе запросов, инстанцированном DB
фасадом Illuminate\Database\Query\Builder
, он спрашиваетyou:
Вы должны указать предложение orderBy при использовании этой функции.
Так будет, если вы делаете:
\DB::table('product')->chunk(10, function($product){
...
});
ЕслиВы вручную добавляете к этому заказ, он не выдаст ошибку и будет работать как положено:
\DB::table('product')->orderBy('created_at')->chunk(10, function($product){
...
});
Однако лучше использовать модель Eloquent напрямую, как это не будетпринуждать вас добавлять заказ по предложению вручную:
Product::chunk(10, function($product){
...
});
Также нет метода DB::collection()
, вы можете использовать DB::table()
вместо этого, если хотите, если вы не используете mongodb
, а не MySQL