آفلاین
user-avatar

ایجاد میدلویر برای post

2 سال پیش
توسط Md Tavangar آپدیت شد
آفلاین
user-avatar
bardia ( 22746 تجربه )
2 سال پیش
تخصص : Golang/Laravel

سلام
من میخوام زمانی که روی دکمه ای کلیلک شد یه پیغام نشون بده بگه مثلن دسترسی ایجاد پست ندارید شما
اینو باید چطوری با میلدلویر پیاده کنم
این روت من

route::post('/save', 'user_category@store')->name('category.save');
آفلاین
user-avatar
حسام موسوی ( 378585 تجربه )
2 سال پیش
تخصص : طراح و برنامه نویس

بنظرم نیازی به میدلور نیست شما یک کلاس Request بوجود بیارید و داخل اون عملیات چک شدن رو انجام بدید که اگر gate لازم یا همون اجازه دسترسی لازم رو داشت ایجاد کنه وگرنه برگرده صفحه قبلی بگه اجازه دسترسی ندارین
این یه نمونه از کلاس form Request

/**
 * Determine if the user is authorized to make this request.
 *
 * @return bool
 */
public function authorize()
{
    $comment = Comment::find($this->route('comment'));

    return $comment && $this->user()->can('update', $comment);
}

البته به گفته خودتون با تعریف میدلور هم میتونید اینکارو کنید با یادگیری روش کار یک میدلور به عقیده من نیازی نیست کسی بهتون بگه اینکارو کنید چون یک روش کامل روشن و مشخص داره که خودتون میتونید انجام بدید

آفلاین
user-avatar
bardia ( 22746 تجربه )
2 سال پیش
تخصص : Golang/Laravel

حالا با میدلویر چطور این کار رو کنم
مثلن میتونم توی میدلویر کویر هم داشته باشم؟
الان من یه جدول دارم که شامل
id-----role_id-------user_id-----active
من user_idرو با دشتور زیر می گیرم
auth()->user()->id
حالا می خوام بدونم آیا میشه کویر زد داخل میدلویر؟
@hesammousavi

آفلاین
user-avatar
Md Tavangar ( 663 تجربه )
2 سال پیش

بله شما میتونید به مدل هاتون در همه جای کد دسترسی داشته باشین اگر هم جدول مربوطه دارای رابطه با جدول کاربرانتون هست که از همینجا میتونید اطلاعاتش رو دریافت کنید

auth()->user()->permissions()->get()
برای ارسال پاسخ باید وارد سایت شوید