模型保存或更新时 Laravel 尾随数据异常
Posted
技术标签:
【中文标题】模型保存或更新时 Laravel 尾随数据异常【英文标题】:Laravel Trailing Data Exception when model save or update 【发布时间】:2018-10-17 00:53:46 【问题描述】:我在 laravel 5.6 中更新模型数据时遇到问题, 很多次之后,我发现实际上问题出在 created_at 和 updated_at 上。 我的代码:
$editStuState = StuAtt::where('studentId' , '=' , 1007)->first();
dd($editStuState -> created_at);
和dd($editStuState)
StuAtt #382 ▼
#table: "stu_attendance"
#connection: "mysql"
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#attributes: array:7 [▼
"id" => "3"
"studentId" => "1007"
"present" => "7"
"absent" => "2"
"leave" => "6"
"created_at" => "2018-04-19 07:01:19.929554"
"updated_at" => "2018-04-19 02:31:19.000000"
]
#original: array:7 [▼
"id" => "3"
"studentId" => "1007"
"present" => "7"
"absent" => "2"
"leave" => "6"
"created_at" => "2018-04-19 07:01:19.929554"
"updated_at" => "2018-04-19 02:31:19.000000"
]
#changes: []
#casts: []
#dates: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: []
#touches: []
+timestamps: true
#hidden: []
#visible: []
#fillable: []
#guarded: array:1 [▶]
打印created_at
字段时出现的错误:
InvalidArgumentException
Trailing data
错误在哪里以及如何解决?
【问题讨论】:
我使用 public $timestamps = false;在模型中,但这不是真正的解决方案。 您能否提供整个例外情况? @Quezler 什么?我现在不是你的意思? 错误还应该包括行号和堆栈跟踪 Laravel InvalidArgumentException in Carbon.php line 425: Trailing data with SQL database的可能重复 【参考方案1】:尾随数据是 Carbon 错误,这是因为您可能使用了PostgreSQL
,而 DB 的日期返回毫秒。
"created_at" => "2018-04-19 07:01:19.929554"
您可以将以下方法添加到您的(基本)模型中。
// ...
public function getDateFormat()
return 'Y-m-d H:i:s.u';
【讨论】:
以上是关于模型保存或更新时 Laravel 尾随数据异常的主要内容,如果未能解决你的问题,请参考以下文章