我已经为这个问题奋斗了数周,并且机智地结束了。从表面上看,这似乎是一个非常简单的解决方法,但是我尝试过的任何方法都没有起作用。我已经在Google上用尽了许多链接来解决这个问题。该错误发生在所有型号上,不仅发生在我的屏幕截图中,还出现在整个模型中。
以下是规格:
这是问题所在:
使用质量分配更新模型时,出现以下错误:
InvalidArgumentException with message 'Trailing data'
这是我尝试过的方法:(多种组合)
似乎问题出在“ .000”的尾随数据上,但是我的变种人不应该解决这个问题吗?另外,我尝试将日期格式更新为Y-m-d H:i:s.u,最后以“ .u”结尾,但是会产生以下错误:
SQLSTATE[22007]: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Conversion failed when converting date and/or time from character string. (SQL: update [programs] set [title] = New title, [updated_at] = 2019-02-12 15:27:40.000000 where [id] = 1)
这是我的模特:
namespace App\Classes\Models;
use Illuminate\Database\Eloquent\Model;
class Program extends Model
{
protected $dateFormat = 'Y-m-d H:i:s.u';
protected $fillable = [
'program_id',
'user_id',
'title',
'westco_service_id',
'allow_changes',
];
protected $dates = [
'deleted_at',
];
public function getCreatedAtAttribute($value)
{
return date('Y-m-d H:i:s.u', strtotime($value));
}
public function getUpdatedAtAttribute($value)
{
return date('Y-m-d H:i:s.u', strtotime($value));
}
public function getDeletedAtAttribute($value)
{
return date('Y-m-d H:i:s.u', strtotime($value));
}
public function setCreatedAtAttribute($value)
{
$this->attributes['created_at'] = date('Y-m-d H:i:s.i', strtotime($value));
}
public function setUpdatedAtAttribute($value)
{
$this->attributes['updated_at'] = date('Y-m-d H:i:s.u', strtotime($value));
}
public function setDeletedAtAttribute($value)
{
$this->attributes['deleted_at'] = date('Y-m-d H:i:s.u', strtotime($value));
}
public function author()
{
return $this->belongsTo(User::class);
}
}
这是我的修补会议: ` Justin Hileman撰写的Psy Shell v0.9.9(PHP 7.2.15-1 + ubuntu16.04.1 + deb.sury.org + 1 — cli)
$ pr = \ App \ Classes \ Models \ Program :: findOrFail(1) => App \ Classes \ Models \ Program {#3325 id:“ 1”, author_id:“ 6”, 标题:“行为健康:PTP”, created_at:“ 2018-08-23 16:47:18.000”, Updated_at:“ 2018-08-23 16:47:18.000”, Deleted_at:null, westco_service_id:null, allow_changes:null, } $ pr-> update(['title'=>'新标题']); InvalidArgumentException,消息为“数据丢失” `
我的补习班截图: https://imgur.com/a/X4YVEx5
任何建议都值得赞赏!
答案 0 :(得分:0)
这里的解决方案是从我的模型中删除所有$ dateFormat属性。我还必须删除不会令我感到兴奋的$ dates属性,但这是我可以使用的东西。