我正在使用遗留数据库。
我正面临一个名为BackDate
的列,其中包含一个不可为空的日期。这不是很好的设计,现在我有一些项目与CCP作为BackDate。
我想用它作为Carbon,所以我在这个列上创建了一个带有日期变异器的模型但是当这个日期为“null”时,我得到了一个错误的Carbon对象(从字符串“build”构建“)。
所以我有一个想法:在创建Carbon对象之前,让我们使用自定义访问器来检查日期是否为“null”。
public function getBackDate($backDate)
{
if($backDate == '0000-00-00') return null;
return new Carbon\Carbon($backDate);
}
但在这种情况下,它不起作用,因为,我猜,Laravel小写BackDate
的第一个字母,返回null作为$ backDate原始值(因为它不存在)。
我该如何解决这个问题?