关于 model 的 $appends,$visible,$connection 的作用?

class Brand extends BaseModel {
protected $connection = 'shop';
protected $table = 'brand';
protected $appends = ['id'];
protected $visible = ['id'];

。。。。。。
}
一个 model 里的
$table 指定数据表名
$counnection $appends $visible 他们分别是起什么作用的呢
我是一棵菜请尽量详细解释一下他们的作用,谢谢!

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

$connection 是指定要连接的数据库名称,这个名称在 config/database.php 中有定义。有时候需要连接多个系统会有用。

$appends 有时候,在转换模型到 数组 或 JSON 时,你希望添加一个在数据库中没有对应字段的属性。参考

$visible 有时候你可能会想要限制包含在模型数组或 JSON 表示中的属性,比如说密码。则可以通过在模型中增加 $hidden 属性定义来实现,相对于$hidden,你也可以使用 visible 属性来定义应该包含在你的模型数组和 JSON 表示中的属性白名单参考

上边说了一堆,都是我马上找的文档。

一般情况下我是这么查找文档的,以$visible为例子【laravel5.4】:

1,首先在官方文档处搜索:

file

2,查看下大致查阅下是否是自己想找的选项,然后点击查询,注意图中圆圈的地方,就是要找的关键字:

file

3,这个时候,刚入门的很多人阅读英文文档会比较吃力,就需要用到了LC的中文文档啦。url后半串,上面的图中对应的是:
/eloquent-serialization#hiding-attributes-from-json,进入中文文档(需要注意版本切换)

将这串字符,复制到官方文档后边,就会变成这样https://learnku.com/docs/laravel/5.4/eloquent-serialization#hiding-attributes-from-json,回车即可。

为什么不在 laravel-china 中直接搜索呢?因为没有全文搜索功能:smile: ,只能曲线救国了~

6年前 评论
讨论数量: 4

$connection 是指定要连接的数据库名称,这个名称在 config/database.php 中有定义。有时候需要连接多个系统会有用。

$appends 有时候,在转换模型到 数组 或 JSON 时,你希望添加一个在数据库中没有对应字段的属性。参考

$visible 有时候你可能会想要限制包含在模型数组或 JSON 表示中的属性,比如说密码。则可以通过在模型中增加 $hidden 属性定义来实现,相对于$hidden,你也可以使用 visible 属性来定义应该包含在你的模型数组和 JSON 表示中的属性白名单参考

上边说了一堆,都是我马上找的文档。

一般情况下我是这么查找文档的,以$visible为例子【laravel5.4】:

1,首先在官方文档处搜索:

file

2,查看下大致查阅下是否是自己想找的选项,然后点击查询,注意图中圆圈的地方,就是要找的关键字:

file

3,这个时候,刚入门的很多人阅读英文文档会比较吃力,就需要用到了LC的中文文档啦。url后半串,上面的图中对应的是:
/eloquent-serialization#hiding-attributes-from-json,进入中文文档(需要注意版本切换)

将这串字符,复制到官方文档后边,就会变成这样https://learnku.com/docs/laravel/5.4/eloquent-serialization#hiding-attributes-from-json,回车即可。

为什么不在 laravel-china 中直接搜索呢?因为没有全文搜索功能:smile: ,只能曲线救国了~

6年前 评论

$connection 是指定要连接的数据库名称,这个名称在 config/database.php 中有定义。有时候需要连接多个系统会有用。

$appends 有时候,在转换模型到 数组 或 JSON 时,你希望添加一个在数据库中没有对应字段的属性。参考

$visible 有时候你可能会想要限制包含在模型数组或 JSON 表示中的属性,比如说密码。则可以通过在模型中增加 $hidden 属性定义来实现,相对于$hidden,你也可以使用 visible 属性来定义应该包含在你的模型数组和 JSON 表示中的属性白名单参考

上边说了一堆,都是我马上找的文档。

一般情况下我是这么查找文档的,以$visible为例子【laravel5.4】:

1,首先在官方文档处搜索:

file

2,查看下大致查阅下是否是自己想找的选项,然后点击查询,注意图中圆圈的地方,就是要找的关键字:

file

3,这个时候,刚入门的很多人阅读英文文档会比较吃力,就需要用到了LC的中文文档啦。url后半串,上面的图中对应的是:
/eloquent-serialization#hiding-attributes-from-json,进入中文文档(需要注意版本切换)

将这串字符,复制到官方文档后边,就会变成这样https://learnku.com/docs/laravel/5.4/eloquent-serialization#hiding-attributes-from-json,回车即可。

为什么不在 laravel-china 中直接搜索呢?因为没有全文搜索功能:smile: ,只能曲线救国了~

6年前 评论

学习到了,谢谢您

6年前 评论

过一阵子我会更新 Eloquent Model 较官方文档更详细的用法,还有源码分析,感兴趣的话可以来瞧瞧

6年前 评论

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