当使用mutator作为日期时,laravel firstOrNew不起作用

问题描述 投票:0回答:1

我试图阻止从csv文件导入重复记录,检查所有项目时一切正常,但是当我想检查重复日期时,它不起作用,因为在模型中我使用mutator函数来更改日期格式。

public function setPostingdateAttribute($date) {
    $this->attributes['postingdate'] = Carbon::createFromFormat('n/j/Y', $date)->format('Y/m/d');
}

用于实现导入csv文件的功能

$data = array_combine($escapedHeader, $columns);
$details = $data['details'];
$postingdate = $data['postingdate'];
$slip = $data['checkorslip'];
$addchecks = Checks::firstOrNew(['postingdate'=>$postingdate]);
$addchecks->details = $details;
$addchecks->slip = $slip;
$addchecks->save();
php laravel csv
1个回答
1
投票

是的,这是已知的问题,据我所知,我已经创建了过去的Pull请求,但它会被拒绝(或者在Laravel github上提出),所以万一你使用firstOrNewfirstOrCreate的mutator可能会让你意想不到结果。

© www.soinside.com 2019 - 2024. All rights reserved.