مشکات
3 سال پیش توسط مشکات مطرح شد
20 پاسخ

restore user

سلام
خسته نباشید
یه سوالی داشتم دوستان ممنون میشم راهنماییم کنید
من با استفاده از softdeleteکاربران رو حذف میکنم بطوری که کاربران حذف شده در دیتابیس باقی میمونن و ادمین اگر خواست میتونه اونهارو restore کنه
حالا یه مشکلی دارم که بطور دستی باید بگم کدوم کاربر رو برگردونه
در حالیکه میخوام هر موقع روی restore زد بدون اینکه بهش آیدی بدم اونو برگردونهتوضیح تصویر رو وارد کنید


ثبت پرسش جدید
مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
Muhammad
تخصص : Back-End Developer
@muhammad 3 سال پیش مطرح شد
0

سلام. یه متد برای restoreکردن داخل کنترلر دارین. به اون متد یه آرگومان می‌دین که آیدی یوزره. route مربوط به این متد هم یه متغیر داخلشه، توی ویو هم با هلپر فانکشن ()route، آرگومان دومش، متغیر که آیدی یوزر باشه رو تعیین می‌کنین.


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

ببخشید میشه بیشتر راهنماییم کنید؟
این کنترلر توضیح تصویر رو وارد کنیدمربوط به یوزرم هست


Muhammad
تخصص : Back-End Developer
@muhammad 3 سال پیش مطرح شد
0

این فقط متد index هست. داخل متد بایند کردین که اشتباهه، متد index شما نیازی به مدل بایندینگ نداره:

public function index (User $user)

یه روت PATCH بسازین:

/users/{id}/restore

یه متد هم داخل کنترلر داشته باشین مثلا به اسم restore:

public function restore($id)

حالا آیدی یوزر رو دارین، دیگه به جای دستی وارد کردن، از این متغیر id استفاده کنین.


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

usercontroller من از نوع resourceهست و نمیتونم متد جدیدی بهش اضافه کنم
یه کنترلر جدید ساختم و کاری رو که گفتید انجام دادم ولی restore انجام نمیشه😥


moha li
تخصص : توسعه دهنده لاراول و Vue
@mohaligateway 3 سال پیش مطرح شد
0

سلام
اشکال نداره از نوع restore باشه. کافیه یک route قسمت پائین route resource بسازید و به کنترلر مربوطه ارجاع به همراه method اون ارجاع بدید.
@a.ghaderi1375


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

@mohaligateway
سلام
عصرتون بخیر
واقعا ممنونم و عذرخواهی میکنم که به جواب نمیرسمتوضیح تصویر رو وارد کنید


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

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


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 3 سال پیش آپدیت شد
0
GET           /users                      index   users.index
GET           /users/create               create  users.create
POST          /users                      store   users.store
GET           /users/{user}               show    users.show
GET           /users/{user}/edit          edit    users.edit
PUT|PATCH     /users/{user}               update  users.update
DELETE        /users/{user}               destroy users.destroy

از کدوم برای حذف کردن استفاده میکنی؟!

<form action="{{ action('Controller@destroy') }}" method="DELETE">
...
</form>

<form action="{{ action('Controller@destroy') }}" method="POST">
    <input type="hidden" name="_method" value="DELETE">
    ...
</form>

درخواستت post میشه دیگه؟!


moha li
تخصص : توسعه دهنده لاراول و Vue
@mohaligateway 3 سال پیش مطرح شد
0

به صورت زیر وارد کنید.

Route::post('/users/restore/{id}', 'User/UserController@restore');

بهتره کد ها رو هم وارد کنید تا راحتتر بشه پاسخ داد.
@a.ghaderi1375


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

@mohaligateway
چشم
الان این ارور رو دارمتوضیح تصویر رو وارد کنید


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

@juza66
سلام
از متد دیلیت برای حذف استفاده میکنم
براحتی حذف میشه
توی ری استور کردنش مشکل دارم


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

@if($user->isDeletedUser())
@can('restore-user')
<a href="{{route('admin.users.index' , ['user'=>$user->id])}}" class="btn btn-sm btn-warning mr-1 ">Restore</a>
@endcan
@endif

این کد قسمت ویوم هست
@mohaligateway


moha li
تخصص : توسعه دهنده لاراول و Vue
@mohaligateway 3 سال پیش آپدیت شد
0
<a href="{{route('admin.users.restore' , ['id'=>$user->id])}}" class="btn btn-sm btn-warning mr-۱ ">Restore</a>

user رو به id تبدیل کنید. برای کد از قسمت بالای ادیتور استفاده کنید.
نام restore رو هم باید روی route بسازید.
@a.ghaderi1375


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش آپدیت شد
0
Route::post('/users/{id}/restore', 'User\UserController@restore')->name('users.restore');

@mohaligatewayتوضیح تصویر رو وارد کنید

الان این ارور رو دارم


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0
 <td class="d-flex">
                                            @if(! $user->isDeletedUser())
                                                @can('delete-user')
                                                    <form action="/admin/users/{{$user->id}}" method="post">
                                                        @csrf
                                                        @method('delete')
                                                        <button class="btn btn-sm btn-danger">حذف</button>
                                                    </form>
                                                @endcan

                                                @can('edit-user')
                                                    <a href="{{route('admin.users.edit' , ['user'=>$user->id])}}" class="btn btn-sm btn-primary mr-1">ویرایش</a>
                                                @endcan

                                               @if($user->isStaffUser())
                                                   @can('staff-user-permissions')
                                                        <a href="{{route('admin.users.permissions' , ['user'=>$user->id])}}" class="btn btn-sm btn-warning mr-1 ">دسترسی ها</a>
                                                    @endcan
                                                @endif
                                            @endif
                                                @if($user->isDeletedUser())
                                                    @can('restore-user')
                                                        <a href="{{route('admin.users.restore' , ['id'=>$user->id])}}" class="btn btn-sm btn-warning mr-1 ">Restore</a>
                                                    @endcan
                                                @endif
                                        </td>

moha li
تخصص : توسعه دهنده لاراول و Vue
@mohaligateway 3 سال پیش آپدیت شد
0

متد form را باید تبدیل به post کنید.
@a.ghaderi1375


Saman
تخصص : برنامه نویس وب
@samanzdev 3 سال پیش مطرح شد
0

سلام
شما باید method فرم تون رو به post تبدیل کنید اون خطایی که میگیره مربوط به اینه که متود فرم تون get هستش.
@a.ghaderi1375


مشکات
تخصص : کاراموز
@meshkat315 3 سال پیش مطرح شد
0

یک دنیا نه بیشتر از یه دنیا ممنونم ازتون
ان شاالله خدا به علمتون برکت بده🌺☘️😊
@mohaligateway
@samanzdev
@juza66
@muhammad


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

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