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

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

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

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

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

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

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

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

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

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

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

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

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

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

Laravel 与 WordPress 系列 —— 集成 Laravel 和 WordPress 的扩展包大全

WordPress是世界上最流行的开源应用之一,据统计,全世界20%的网站基于WordPress开发,使用WordPress管理后台、发布文章、添加菜单、上传图片非常方便,因此有时候我们想要借助WordPress的后台来构建应用,但是前台我们想要有更多自定义空间,能够像Laravel一样进行各种灵活的开发,好消息是,Github上有很多针对Wordpress后台+Laravel前台的扩展…

Laravel 5.2 新特性系列 —— 隐式路由模型绑定功能实现

Laravel 5.1 中已经提供了路由模型绑定功能,而在 Laravel 5.2中,这一功能实现变得更加简单。 1、路由模型绑定的基本使用 通常我们在URL路由中通过如下方式绑定模型: Route::group([‘middleware’ => [‘web’]], function () { Route::get(‘/user/{id}’,function($id){ $user…

[ Lumen 5.2 文档 ] 更多特性 —— 单元测试

1、简介 Lumen植根于测试,实际上,使用PHPUnit对测试提供支持是开箱即用的,并且测试配置文件phpunit.xml已经为应用设置好了。框架还提供了很多辅助函数从而允许你对应用进行更加富有表现力的测试。 tests目录中提供了一个ExampleTest.php文件,安装完新的Lumen应用后,只需简单在命令行运行phpunit即可运行测试。 1.1 测试环境 Lumen在测试时自…