سلام
یه سوالی داشتم در مورد اینکه وقتی یک رکوردی توی دیتابیس soft delete میشه در واقعا اون سطر توی دیتابیس میمونه و فقط فیلد deletedat اش پر میشه و با این حساب چجوری میشه سطر جدول های دیگه که از ایدی این سطر به عنوان foreign key استفاده میکردن رو پاک کرد
در واقع عمل on delete cascade دیگه کار نمیکنه
چند تا کار میشه انجام داد
۱. رکوردهای مربوطه (روابط) رو به صورت دستی پاک کنی..
۲. از کلاسهای Observer استفاده کنی..
۳. از پکیج laravel-cascade-soft-deletes استفاده کنی..
۴. استفاده از Event-Listener های custom
سلام
باید این عمل به صورت دستی انجام بشه، یعنی شما جدوالتون رو به هم ربط دادید، حالا مثلا میخواید کاربری رو با آیدی 1 پاک بکنید، فقط کافیه همچین کدی بنوسید :
$user = User::find($id);
$user->tasks()->delete();
$user->delete();
یعنی جداولی که به User مربوط هستن رو به صورت دستی مینویسید و پاک میکنید.
چند تا کار میشه انجام داد
۱. رکوردهای مربوطه (روابط) رو به صورت دستی پاک کنی..
۲. از کلاسهای Observer استفاده کنی..
۳. از پکیج laravel-cascade-soft-deletes استفاده کنی..
۴. استفاده از Event-Listener های custom
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟