نوب
3 سال پیش توسط نوب مطرح شد
2 پاسخ

مشکل با policy برای حذف پست کاربر

سلام
من یه policy نوشتم که وقتی کاربر بخواد پستی که منتشر کرده را حذف کنه نتونه id کاربر دیگه را بزنه
روی لوکال هاست درست کار میکنه ولی پروژه را بردم روی سرور این مورد کار نمیکنه و وقتی حذف پست را میزنه 403 authorization میده

مشکل چیه ؟
کد policy

    /**
     * Determine whether the user can delete the model.
     *
     * @param  \App\User  $user
     * @param  \App\post  $post
     * @return mixed
     */
    public function delete(User $user, post $post)
    {
        if($user->role === 'admin') return true;
        return $user->id === $post->user_id;
    }

کد قسمت PostController متد destroy

public function destroy(post $post)
    {
        $this->authorize('delete', $post);
        $post->delete();
        Alert::success('پست موردنظر با موفقیت حذف شد')->showConfirmButton('باشه', '#3085d6');;
        return back();
    }

ثبت پرسش جدید
نوب
تخصص : کدنویس نوب :)
@yk5742g 3 سال پیش مطرح شد
0

@ali.bayat
سلام استاد
لطفا به سوال من در صورت امکان پاسخ بدید
سپاس


محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 3 سال پیش مطرح شد
0
  • در نسخه روی هاست آیا مطمئن هستید که user_id پست برابر با آیدی لاگین کرده هست؟ با ()dd خیلی راحت می تونید هر دو مقدار رو مشاهده کنید و با هم مقایسه کنید.

  • آیا اگر با نقش admin وارد بشید باز هم ارور وجود داره؟

  • آیا type ستون user_id تون از نوع integer هست؟ (یکبار بجای علامت === از == استفاده کنید و تست کنید)


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

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