教程中 $casts 属性的意义?

users_add_email_verified.php 文件中已经定义了 email_verified 字段为 boolean

        Schema::table('users', function (Blueprint $table) {
            $table->boolean('email_verified')->default(false)->after('remember_token');
        });

这样的话在 User.php 中再加上

    protected $casts = [
        'email_verified' => 'boolean',
    ];

意义何在?

按照教程在 tink 里测试,加不加 $cast 结果都一样呀

>>> App\Models\User::find(1)->email_verified
=> false
>>> App\Models\User::find(1)->email_verified
=> false
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
leo
最佳答案

改 $casts 值之后要重启 tinker 才能看到效果

5年前 评论
讨论数量: 3
leo

改 $casts 值之后要重启 tinker 才能看到效果

5年前 评论

哈哈,刚刚发现了,没设置 $cast 的时候是 0 和 1,见笑了!

5年前 评论

设置了casts 后,想要在某些地方跳过这种转换,应该怎么写啊

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!