[ Lumen 5.3 文档 ] 更多特性 —— 数据库

Lumen

1、配置 在Lumen中连接数据库和运行查询都非常简单,目前Lumen支持四种数据库系统:MySQL、Postgres、SQLite和SQL Server。 你可以在配置文件.env中使用配置选项DB_*来配置数据库设置,例如驱动、主机、用户名和密码。 2、基本使用 注:如果你想要使用DB门面,应该取消bootstrap/app.php文件中$app->withFacades()调…

[ Laravel 5.3 文档 ] 官方包 —— Laravel Scout

laravel文档

1、简介 Laravel Scout为Eloquent模型全文搜索实现提供了简单的、基于驱动的解决方案,通过使用模型观察者,Scout会自动同步更新模型记录的索引。 目前,Scout通过Algolia驱动提供搜索功能,不过,编写自定义驱动很简单,你可以很轻松地通过自己的搜索实现来扩展Scout。 2、安装 首先,我们通过Composer包管理器来安装Scout: composer req…

[ Laravel 5.3 文档 ] Eloquent ORM —— 序列化

laravel文档

1、简介 当构建 JSON API 时,经常需要转化模型和关联关系为数组或 JSON。Eloquent 提供了便捷方法以便实现这些转换,以及控制哪些属性被包含到序列化中。 2、序列化模型&集合 序列化为数组 要转化模型及其加载的关联关系为数组,可以使用 toArray 方法。这个方法是递归的,所以所有属性及其关联对象属性(包括关联的关联)都会被转化为数组: $user = App…

[ Laravel 5.3 文档 ] Eloquent ORM —— 访问器&修改器

laravel文档

1、简介 访问器和修改器允许你在获取模型属性或设置其值时格式化 Eloquent 属性。例如,你可能想要使用Laravel加密器对存储在数据库中的数据进行加密,并且在 Eloquent 模型中访问时自动进行解密。 除了自定义访问器和修改器,Eloquent 还可以自动转换日期字段为Carbon实例甚至将文本转换为JSON。 2、访问器 & 修改器 定义访问器 要定义一个访问器,需…

[ Laravel 5.3 文档 ] Eloquent ORM —— 集合

laravel文档

1、简介 Eloquent 返回的所有的包含多条记录的结果集都是 Illuminate\Database\Eloquent\Collection 对象的实例,包括通过 get 方法或者通过访问关联关系获取的结果。Eloquent 集合对象继承自 Laravel 的集合基类,因此很自然的继承了很多处理 Eloquent 模型底层数组的方法。 当然,所有集合也是迭代器,允许你像PHP数组一样…

[ Laravel 5.3 文档 ] Eloquent ORM —— 关联关系

laravel文档

1、简介 数据表经常要与其它表做关联,比如一篇博客文章可能有很多评论,或者一个订单会被关联到下单用户,Eloquent 使得组织和处理这些关联关系变得简单,并且支持多种不同类型的关联关系: 一对一 一对多 多对多 远层一对多 多态关联 多对多的多态关联 2、定义关联关系 Eloquent 关联关系以Eloquent模型类方法的形式被定义。和 Eloquent 模型本身一样,关联关系也是强…

[ Laravel 5.3 文档 ] Eloquent ORM —— 起步

laravel文档

1、简介 Laravel 自带的 Eloquent ORM 提供了一个美观、简单的与数据库打交道的 ActiveRecord 实现,每张数据表都对应一个与该表进行交互的“模型”,模型允许你在表中进行数据查询,以及插入、更新、删除等操作。 在开始之前,确保在config/database.php文件中配置好了数据库连接。更多关于数据库配置的信息,请查看文档。 2、定义模型 作为开始,让我们…

[ Laravel 5.3 文档 ] 数据库 —— 分页

laravel文档

1、简介 在其他框架中,分页是件非常痛苦的事,Laravel的分页器集成了查询构建器和Eloquent ORM,并且开箱提供了方便的、易于使用的、基于数据库结果集的分页。分页器生成的HTML兼容Bootstrap CSS 框架。 2、基本使用 基于查询构建器进行分页 有多种方式实现分页,最简单的方式就是使用查询构建器或Eloquent模型的paginate方法。该方法基于当前用户查看页自…

laravel-amount —— Model 中自动转换金额的 Trait

Model 中自动转换金额的 Trait

1、背景 系统中涉及到金额的字段,View 层表现的时候一般都是以元为单位使用小数形式展示,不过 Domain 层存储时从空间、性能、容错角度出发,经常以分为单位,用整型来存储。 在 Lavarel 中,可以在 Model 中添加属性方法进行转换 public function getAmountAttribute($value) { return $value / 100; } pub…

即将发布的 Laravel 5.3 将会带来哪些新功能,让我们先睹为快

laravel-5-3-new-feature

Laravel 5.3 目前正在开发中,和所有的新版本 Laravel 发布一样,这一版本将会增加一些新功能和新特性,下面让我们一睹为快。 1、Eloquent 集合作为队列任务构造函数参数优化 Laraval队列任务在分发时如果以一个Eloquent模型作为构造函数参数的时候,我们可以使用SerializesModels trait只序列化模型的主键,当真正处理这个队列任务的时候才会根…