رفتن به مطلب
انجمن پشتیبانی لاراول ایران

هاست لاراول با پشتیبانی 24 ساعته و امکانات کامل از مدیرهاست

Recommended Posts

سلام

در کنترل در قسمت متد  edit اینها رو نوشتم ولی به  من null می ده.

چجوری می تونم یک سطری از مشخصات افراد رو ویرایش کنم.

public function edit($id)
}
;users = Listuser::find($id)$
return view('listuser.edit',(compact('users));
{

Share this post


Link to post
Share on other sites

هاست لاراول با پشتیبانی 24 ساعته و امکانات کامل از مدیرهاست

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

شما بهتر بود از کدهایی که نوشته اید عکس یا خود کدها رو در اختیار ما میگذاشتید تا بهتر راهنمایی کنید به هر حال من به عنوان مثال یک ویرایش و بروزرسانی فرضی انجام میدهم که مطمئنم قابل فهم خواهد بود.

دیتابیس من حاوی یک جدول به نام Products میباشد که نام محصول و قیمت در آن میباشد.

Products 
|--------id 
|--------name 
|--------price 

حال من برای برای هرگونه تغییر و قبت باید این مقادیر را در داخل مدل خود اضافه کنم.

protected $fillable = [
        'name',
        'price',
    ];

من بایدداخل web.php روت های مربوط به این دو را بسازم.

Route::group(['prefix' => '/admin/product', 'middleware' => 'auth'], function () {
 
    Route::get('/edit/{product}', 'backend\ProductController@edit')->name('product.edit');
    Route::put('/update/{product}', 'backend\Product@update')->name('product.update');
    
});

حال نوبت به ویرایش و بروزرسانی میرسد که من داخل کنترلر آن را مینویسم.

نقل قول

ما بر این فرض که شما دیتابیس و view را ساخته اید ادامه میدهیم

قسمت Edit چیز خاصی ندارد و ما باید یک ویو را بازگردانیم

 public function edit(Product $product)
    {
        return view('backend.product.edit', compact('product'));
    }

ما در اینجا مقدار داخل کلاژر که یک مدل جدید از دیتابیس هست را با دستور Compact به ویو ارسال میکنیم تا در آنجا بتوانیم مقادیر را به کاربر نشان بدهیم تا بفهمد چه مقداری دارد تا اگر نیاز بود تغییر دهد.

در Update ما با Save , Update میتوانیم عملیات را انجام دهیم.

public function update(Request $request, Product $product)
    {
        $validatedData = $request->validate([
            'name' => 'required|max:255',
			'price' => 'number'
        ]);
      
            $product->update($request->all());
       
        return view('index');
    }

من در اینجا در تابع Update در ابتدا اعتبارسنجی را انجام دادم و گفتم که نام محصول من که همنام با جدول دیتابیس هست باید نوشته شود و اجباری است و نمیتواند بیشتر از 255 کاراکتر باشد و برای قیمت هم گفتم باید فقط عدد باشد. در ادامه متغیر product را با متد آپدیت به روزرسانی میکنیم که در اینجا من همه request ها رو گفتم . این بیسیک ترین راهی بود که گفتم البته باید داخل try باشد تا خطاهارا مدیریت کرد و......

موفق و سربلند باشید

 

Share this post


Link to post
Share on other sites

وارد این گفتگو شوید

میتوانید پیام خود را ارسال کنید و بعد ثبت نام نمایید. در صورتی که حساب کاربری دارید, هم اکنون وارد شوید و در این گفتگو شرکت کنید.

مهمان
پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  Only 75 emoji are allowed.

×   لینک شما به صورت اتوماتیک جایگذاری شد.   نمایش به عنوان یک لینک به جای

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • جدید...