۶ میلیون تومان تخفیف ویژه🎁 برای پخته‌ترین و کاربردی‌ترین متود آموزشی سون لرن😍 کلیک کن👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ Mehrjoo
استفاده از مقداری مورد نظر
مصطفی زارعی حل شده توسط مصطفی زارعی

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

 '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;
}

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

 

 

بهترین پاسخ
مصطفی زارعی ۰۸ آذر ۱۴۰۳، ۱۶:۵۷