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

جلوگیری از کد های تکراری در لاراول

سلام و عرض خسته نباشید

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

<?php

namespace App\Http\Controllers;

use App\Models\Product;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
class ProductController extends Controller
{
    //

    public function show_update(Request $request , Validator $validator){

        $validator =  $validator::make($request->all(), [
            'id' => 'required',
        ]);
        if ($validator->fails()) {
            return redirect('users/products_list')->with("error" , 'مشکلی در بروز رسانی پیش امده است  ');
        }
        $id = $request->input('id');

        Product::findOrFail($id);

        return view('admin.pages.products.show_update' , compact('id'));

    }

    public function show_column(Request $request , Validator $validator){

        $validator =  $validator::make($request->all(), [
            'id' => 'required',
        ]);
        if ($validator->fails()) {
            return redirect('users/products_list')->with("error" , 'مشکلی در  نمایش اطلاعات پیش امده است  ');
        }
        $id = $request->input('id');

        Product::findOrFail($id);

        $requested_column = Product::where('id',$id)->first();

        return view('admin.pages.products.show_column' , compact('requested_column'));

    }

}

ولی این قسمت از کدام تو هر دو متد تکراری هست :

  $validator =  $validator::make($request->all(), [
            'id' => 'required',
        ]);
        if ($validator->fails()) {
            return redirect('users/products_list')->with("error" , 'مشکلی در  نمایش اطلاعات پیش امده است  ');
        }
        $id = $request->input('id');

        Product::findOrFail($id);

چطوری از تکرار کردن کدام جلوگیری کنم!؟؟؟


ثبت پرسش جدید
milad
تخصص : learning about laravel
@milad.rahimi2266 3 سال پیش مطرح شد
1

سلام یک متد به صورت پرایویت تو کنترلرت تعریف کن و این متد رو بهش پاس بده و با کلمه کلیدی $this ازش استفاده کن ....
البته خود کلاس ریکوئست ولیدیت داره اگر از اون استفاده کنید خیلی کارتون تمیز تر و راحت تر خواهد بود


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

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