محمد
7 سال پیش توسط محمد مطرح شد
5 پاسخ

Restore کردن دیتا

من میخام وقتی کاربر مثلا مقاله ای را پاک میکنه یجایی در جدولی لیست مقالات پاک شده را ببینه و اگر خواست بتونه با انتخاب هر مقاله restore کنه.
میدونم که از Softdelete بایستی استفاده کرد اما خب نمیدونم چطوره و چه مدلی اطلاعات \اک شده را برگردونم.
ممنون میشم با تکه کدی یا نمونه پروژه ای من را راهنمایی کنید.


ثبت پرسش جدید
سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 7 سال پیش مطرح شد
1

در مدل مقالاتت، یک فیلد دیگه در تیبل ت اضاف کن بنام.
$table->softDeletes();

هرجا خواستی دلیت انجام بدی این متد
$flights = App\Flight::withTrashed()
->where('account_id', 1)
->get();

رو فراخونی کن.، یک فرمت تاریخ در فیلد softdelete اضاف میشه که لاراول در صورت پر بودن اون فیلد ، کل دیتا ردیف رو در نظر نمیگیره، شما برای باز گردانی فیلدات میتونی با اپدیت کردن دیتابیست و خالی کردن فیلدت در اصل بازگردانی رو انجام بدی،

$flight->restore();

لاراول وقتی اون فیلد خالی باشه ردیفت در دیتابیس رو هم حساب میکنه..


محمد امیر محمدی
تخصص : برنامه نویس لاراول و ویو جی اس
@mem.amir.m 7 سال پیش آپدیت شد
2

در مدل مقالاتت، یک فیلد دیگه در تیبلت اضاف کن بنام.

$table->softDeletes();

هرجا خواستی دلیت انجام بدی این متد

$articles = AppArticle::withTrashed()
->where('account_id', ۱)
->get();

رو فراخونی کن.، یک فرمت تاریخ در فیلد deleted_at اضافه میشه که لاراول در صورت پر بودن اون فیلد ، کل دیتا ردیف رو در نظر نمیگیره، شما برای باز گردانی فیلدات میتونی با اپدیت کردن دیتابیست و خالی کردن فیلدت در اصل بازگردانی رو انجام بدی،

$articles->restore();

لاراول وقتی اون فیلد خالی باشه ردیفت در دیتابیس رو هم حساب میکنه..

"اصلاح کامنت دوستمون"


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 7 سال پیش آپدیت شد
0

متشکر دوست خوبم امیرجان

و جهت صحیح پیامم بگم که؛

فیلدی به نام deleted_at در دیتابیس منظوزم بود اشتباه بالا گفتم softdelete

متد حذف کردن هم همون تابع
delete()

اون تابع بالا برای گرفتن ایتم های حذف شده بود


محمد
@man 7 سال پیش مطرح شد
0

account_id منظور چی هست؟


محمد امیر محمدی
تخصص : برنامه نویس لاراول و ویو جی اس
@mem.amir.m 7 سال پیش آپدیت شد
0

البته میتونه جای account_id هرچیزی باشه.چون سلکت کردن هست دیگه.
ولی اینجا فکر کنم منظور دوستمون همون آی دی یوزری هست که این مقالات رو نوشته.


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

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