majid9674
2 سال پیش توسط majid9674 مطرح شد
1 پاسخ

استفاده از شرط به همراه chunk در لاراول

با سلام وقتی میخواهیم از chunk استفاده کنیم نمیتوانیم قبل از آن دیتا ها را به صورت شرطی دریافت کنیم و تغییر بدهیم به عنوان مثال :
User::where('approved', 0)->chunk(100, function ($users) {
foreach ($users as $user) {
$user->update(['approved' => 1]);
}
});
در اینجا ما لیستی از کاربر های تایید نشده را دریافت میکنیم و تاییدشان میکنیم اما با این کار زمانی که لاراول پرس و جوی پایگاه داده دیگری را برای دریافت یک صفحه دیگر اجرا می‌کند، داده‌ها تغییر کرده‌اند و در این صورت شما یک صفحه داده را از دست خواهید داد و فقط نیمی از داده‌ها را پردازش خواهید کرد.
برای حل این مشکل چیکار باید کرد ؟


ثبت پرسش جدید
مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 2 سال پیش مطرح شد
0

سلام نمی دونم چرا داری از chunk استفاده میکنی
ولی فکر کنم توی داکیومنتش برای این کارت یه مثالی زده
https://laravel.com/docs/9.x/eloquent#chunking-results


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام