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

مشکل ایجاد دکمه حذف سوال

درود دوستان...
برای ایجاد دکمه حذف سوال چکار باید کرد؟ طبق کد زیر نوشتم کار نکرد...

public function destroy($id)
    {
        $discuss = Discuss::find($id);
        $discuss -> delete();

        return redirect() -> route('discuss.show' , $discuss -> id) -> withMessage('سوال شما با موفقیت حذف شد');
    }

کد دکمه :

<a href="{{ route('discuss.destroy' , $discuss -> id) }}" class="badge badge-danger com"><i class="fa fa-trash" aria-hidden="true"></i> حذف سوال</a>

ممنون میشم جواب بدید


ثبت پرسش جدید
رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش آپدیت شد
1

مشکل حل شد ممنون از دوستان...

با حذف نوشته به صفحه اصلی منتقل و پیام حذف نوشته را نمایش میدهد:

return redirect('/')->withMessage('سوال شما با موفقیت حذف شد');

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

سلام کنترلر و تگ اچ تی ام اوکیه فقط یک روت کم دارید

در فایل web.php

Route::get('/discuss/{id}', 'DiscussController@destroy'

روت رو مرتبط میکنی با کنترلر همین


developer
تخصص : برنامه نویس
@developer 7 سال پیش آپدیت شد
1
        <a href="{{ route('discuss.destroy' ,['id'=>$discuss -> id]) }}" class="badge badge-danger com"><i class="fa fa-trash" aria-hidden="true"></i> حذف سوال</a>

@swordart2050


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش آپدیت شد
1

@juza666
درود...
درسته روت رو یادم رفت بنویسم..
اما با ایجاد روت بازم دکمه کار نمی کنه...


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@alirezasafdari

بازم کار نکرد دوست عزیز


developer
تخصص : برنامه نویس
@developer 7 سال پیش مطرح شد
1

یک dd بگیرید ببینید $discuss چیزی رو برمیگردونه؟
کلاس discuss رو فراخونی کردید؟

@swordart2050


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@alirezasafdari
ببخشید کد dd چی بود؟

کلاس discuss فراخوانی شده چون چنین خطایی ندیدم!


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

این کد امتحان کردم کار نکرد

{{ Form::open(
                        [
                          'route' => ['discuss.destroy', $discuss->id], 
                          'class' => 'pull-right'
                        ]
                      ) }}
                      {{ Form::hidden('_method', 'DELETE') }}
                      {{ Form::submit('Delete this Tip', 
                        [
                          'class' => 'btn btn-warning'
                        ]
                      )}}
                      {{ Form::close() }}

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

سلام

میشه کدهای روت، کنترلر و فرم تون رو قرار بدید

با dd($discuss); در فاکشن مورد نظرتون چک کنید ببینید ایدی رو برمیگردونه یا نه!


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@juza666

Discuss {#509 ▼
  #connection: "mysql"
  #table: null
  #primaryKey: "id"
  #keyType: "int"
  +incrementing: true
  #with: []
  #withCount: []
  #perPage: 15
  +exists: true
  +wasRecentlyCreated: false
  #attributes: array:5 [▶]
  #original: array:5 [▶]
  #changes: []
  #casts: []
  #dates: []
  #dateFormat: null
  #appends: []
  #dispatchesEvents: []
  #observables: []
  #relations: []
  #touches: []
  +timestamps: true
  #hidden: []
  #visible: []
  #fillable: []
  #guarded: array:1 [▶]
}
Route::get('/discuss/destroy/{id}', 'DiscussController@destroy')->name('discuss.destroy');

رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

این route که قرار دادم توی حذف سوال عمل کرد ولی خطا دریافت می کنم.

Route::get('/discuss/destroy/{id}', 'DiscussController@destroy')->name('discuss.destroy');

خطا:

ErrorException (E_ERROR)
Trying to get property 'title' of non-object (View: C:\xampp\htdocs\discuss\resources\views\discuss\show.blade.php)

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

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

Route::get('/discuss/{id}', 'DiscussController@destroy')->name('discuss.destroy');

رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@juza666

تغییر دادم کار نکرد...
فقط اون روتی که من قرار دادم کار می کنه...


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

یکاری کن

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

Route::get('/discuss/destroy/{id}', 'DiscussController@destroy')

لینک دکمه حذف اینجوری

<a href="/discuss/destroy/{{$discuss->id}}" class="badge badge-danger com"><i class="fa fa-trash" aria-hidden="true"></i> حذف سوال</a>

رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@juza666

این مورد کار کرد ولی خطا میده:

Trying to get property 'title' of non-object (View: C:\xampp\htdocs\discuss\resources\views\discuss\show.blade.php)

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

این خطا میگه ابجکت title نیست
ویو رو چک کن ببین title چی برمیگردونه برش دار تست کن، و چک کن ببین موردت حذف شده یایت نه


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@juza666
بر می دارم یه خطای دیگه میده میگه id نیست...

نمی دونم کجا مشکل داره


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

کدهای ویو رو بذارید


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش مطرح شد
1

@juza666

@extends('layouts.app')

@section('content')
<div class="row">
    <div class="col-md-8">
        @include('discuss.include.flash')
        <div class="card">
            <div class="row">
                <div class="col-md-9">
                    <div class="titles">
                        {{ $discuss -> title }}
                    </div>
                </div>
                <div class="col-md-3 text-center">
                    <a href="{{ route('discuss.edit' , $discuss -> id) }}" class="badge badge-secondary ed"><i class="fa fa-pencil" aria-hidden="true"></i> ویرایش سوال</a>
                </div>
            </div>
            <hr class="md-4">
            <div class="card-body">
                {{ $discuss -> post }}
            </div>
            <div class="col-md-12">
                <span class="badge badge-info"> ۱۰ پاسخ</span>
                <span class="badge badge-info"> ۱۰ پاسخ</span>
                <span class="badge badge-info"> ۱۰ پاسخ</span>

            </div>
            <hr class="md-4">
            <div class="row">
                <div class="col-md-3">
                    <figure class="img">
                        <img src="{{ asset('img/1.jpg') }}" alt=""> رایموند دارگون
                    </figure>
                </div>
                <div class="col-md-5">
                    <h6>سوال شده 5 ساعت قبل در  کیف پول.</h6>
                </div>
                <div class="col-md-4 float-left">
                    <a href="/discuss/destroy/{{$discuss->id}}" class="badge badge-danger com"><i class="fa fa-trash" aria-hidden="true"></i> حذف سوال</a>
                    <span class="badge badge-danger com"><i class="fa fa-exclamation-circle" aria-hidden="true"></i> گزارش</span>
                    <span class="badge badge-info com"><i class="fa fa-comments" aria-hidden="true"></i> ۱۰ پاسخ</span>
                </div>
            </div>
        </div>
    </div>
    <div class="col-md-4">2</div>
</div>
@endsection

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

خب وقتی دکمه حذف میزنی بک لینک میشی به این صفحه؟!
اگر اره چون رکوردت حذف میشه پس طبیعتاً ایتمی وجود نداره که بخواد تویی متغییر قرار بگیره و خطا میده.


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 7 سال پیش آپدیت شد
1

@juza666

آره دیگه
راه حل مشکل چیه؟ عجیب خطا میده


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

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