类 Illuminate\Support\Facades\Date 的对象无法转换为字符串 [重复]
Posted
技术标签:
【中文标题】类 Illuminate\\Support\\Facades\\Date 的对象无法转换为字符串 [重复]【英文标题】:Object of class Illuminate\Support\Facades\Date could not be converted to string [duplicate]类 Illuminate\Support\Facades\Date 的对象无法转换为字符串 [重复] 【发布时间】:2021-08-17 06:18:56 【问题描述】:在将我的项目从 laravel 7 升级到 laravel 8 后,我遇到了这个错误,有人可以向我解释一下,因为项目;s 迁移运行良好,但现在我无法运行 artisan migrate
$table->date('booked_from')->default(new Date());
$table->date('booked_to')->default(new Date());
【问题讨论】:
错误信息似乎很清楚?default()
需要一个字符串,大概类似于 2021-05-29 01:02:03
或其他什么,但 new Date()
是一个 Illuminate\Support\Facades\Date 对象。如果您只想给它今天的日期,您可以简单地使用date('Y-m-d')
或其他格式?
我想选择插入时的当前日期,就像 mysql 的当前时间戳一样工作
【参考方案1】:
作为问题 Don't Panic provides in his comment above 中提供的众多解决方案之一的替代方案,您还可以利用 Laravel 附带的 Carbon DateTime 包。
$table->date('booked_from'->default(Carbon::now());
$table->date('booked_to')->default(Carbon::now());
【讨论】:
以上是关于类 Illuminate\Support\Facades\Date 的对象无法转换为字符串 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
JavaSE基础(十 三 )---<内部类>成员内部类,静态内部类,局部内部类,匿名内部类,内部类的意义