3
我在我的預訂模型中有一列存儲datetime爲reservation_datetime
,但是在我的表單中,我將它分成了兩個單獨的字段(日期&時間html5輸入)。在Laravel中使用mutator填充列
我創建了一個setter mutator來存儲從兩個輸入派生的日期,但插入記錄時沒有任何內容保存到reservation_datetime
列中。
這是我的突變
public function setReservationDatetimeAttribute($value)
{
return $this->attributes['reservation_datetime'] = $this->date . " " . $this->time;
}
我注意到,如果我把僞投入我的$fillable
陣列(reservation_datetime
已經存在),那麼我能夠增變設置爲正確的值,但這會導致ORM試圖保存date
和time
列的其他問題,這些列明顯不存在,導致保存時出錯。
Mutators對此是錯誤的工具。在您的控制器中手動設置'reservation_datetime'。 –
你能解釋爲什麼這不是正確的功能使用?我的理解是,這正是增肌者習慣做的事情。 – Imran
Mutators將被用於其他方式。如果你的表單有一個你想要分成兩個的字段,或者簡單地改變一個屬性的值。將兩個屬性合併爲一個並不是什麼變體。 –