🔥 با کمک هوش مصنوعی در کمتر از 6 ماه فول‌استک شوید ...
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ گلشید زین‌الدین
استفاده از مقداری مورد نظر
الیزه توسلی حل شده توسط الیزه توسلی

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

 'created_at' => Carbon::now(), 

اگ از خط کد زیر استفاده کنم دیگه نمی‌تونم اینو بهش بدم :

$product->create($request->all());

آیا باید از اکسسور استفاده کنم برای ست شدن این مقدار یا خیر؟ اگر راهکاری هست لطفا کامل بهم بگید تا یاد بگیرم

در حال حاضر مجبورم بصورت زیر کد بزنم :

$product->create([
'name' => $request->name,
.... ,
.... ,
.... ,
'created_at' => Carbon::now(),
]);

سلام. وقتتون بخیر

اکسسورها برای دریافت داده‌ها و اعمال تغییرات روی آنها هست.

 

میتونید از model mutators‌ها استفاده کنید که قبل از ذخیره داده در database، میتونید تغییرات مدنظرتون رو اعمال کنید: 

class Product extends Model
{
    public function setCreatedAtAttribute($value)
    {
        $this->attributes['created_at'] = Carbon::now();
    }
}

و اگر هم که میخواید لاراول مدیریت کنه این فیلد رو می‌تونید پراپرتی timestamps رو ست کنید:

class Product extends Model
{
    public $timestamps=true;
}

که لاراول به صورت اتوماتیک مدیریت میکنه.

 

 

بهترین پاسخ
الیزه توسلی ۰۸ آذر ۱۴۰۳، ۱۶:۵۷