类 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 的对象无法转换为字符串 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Java 静态成员类 非静态的成员类 局部类 匿名类

JavaSE基础(十 三 )---<内部类>成员内部类,静态内部类,局部内部类,匿名内部类,内部类的意义

Kotlin基础(十三) 嵌套类内部类和匿名内部类

java 内部类和外部类的关系

19-Java-核心类库2-包装类Integer类String类StringBuffer类StringBuilder类

Kotlin基础(十三) 嵌套类内部类和匿名内部类