php - 记录查询的集合时出现数据丢失错误
问题描述
我无法访问 Laravel 中的特定集合。当我记录我查询的集合时,我收到“数据丢失”错误。
$user = Auth::user();
$chats = $user->chats()->get();
Log::debug($chats); //OK
foreach ($chats as $chat) {
Log::debug($chat); //OK
$latestMessage = $chat->messages()->first();
Log::debug($latestMessage); //Causes crash
}
聊天与消息具有一对多的关系。
在 Message.php 文件中
public function chat(){
return $this->belongsTo('App\Chat');
}
在 Chat.php 文件中
public function messages(){
return $this->hasMany('App\Message');
}
消息表有一个名为“chat_id”的列,它链接到聊天表的 id 列。我想我在某个地方犯了一些简单的错误,但我无法弄清楚它到底在哪里。
编辑:这似乎与日期格式有关。
protected $dateFormat = "Y-m-d H:i:s.u"
堆栈跟踪说
#0 /home/vagrant/Code/next/Laravel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php(768): Carbon\\Carbon::createFromFormat('Y-m-d H:i:s.u', '2020-01-04 23:2...')
解决方案
推荐阅读
- r - 基于 R 中另一列的值进行计数
- javascript - 从表单中检索数据(Codeigniter、AJAX)
- python - 无法加载图片路径
- json - Elasticsearch 查询 DSL
- redirect - 将请求从端口 443 重定向到 IIS 中的某个其他端口
- angular - 角形式不发送更新的值
- python - 如何将此数据集拆分为训练集、验证集和测试集?
- angular - 在出现错误 404 的情况下使用 ngIf 重用组件,可能吗?如何捕捉错误?
- javascript - devops REST API:无法使用 PATCH 方法更新工作项状态
- c# - ASP.NET Core 中间件破坏物理文件控制器方法