首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

laravel 模型Eloquent ORM 查询

up前面玩了 DB 查询,但是laravel开发基本不怎么使用db方式查询,应该有更强大的 模型 Model 介绍 Laravel 的 Eloquent ORM 提供了一个漂亮、简洁的 ActiveRecord...laravel 的 Model 使用先进的 Eloquent ORM 但也有优缺点 优点是数据库的操作变的简单安全 缺点也明显数据库的操作变的缓慢笨重 Eloquent ORM 作为 laravel 中亮点...」的数据库表 两种方式解决 第一种Eloquent中自定义$table,缺点:如果是重构的项目,表名每个Eloquent都要重新定义可就有的哭了 ``` protected $table =...'test'; ``` 第二种添加自定义的Eloquent基类 BaseModel 黑科技可以永绝后患 <?...// } 以后的模型不要直接由 Eloquent 派生,改为由 BaseModel 派生,就不用特殊指定表名,表名与模型名称直接一致,也不再驼峰呀什么的了。

4.4K10

Laravel Eloquent 模型关联关系(下)

在前面两篇教程中,学院君陆续给大家介绍了 Eloquent 模型类支持的七种关联关系,通过底层提供的关联方法,我们可以快速实现模型间的关联,并且进行关联查询。...在 Eloquent 模型上进行关联查询主要分为两种方式,一种是懒惰式加载(动态属性),一种是渴求式加载(通过with方法)。...统计关联模型 我们还可以通过 Eloquent 提供的 withCount 方法在不加载关联模型的情况下统计关联结果的数量。...Eloquent 提供了这种同步机制帮助我们更新子模型时触发父模型的更新时间 updated_at 字段值更新,要让该机制生效,需要在子模型中配置 $touches 属性: // 要触发更新的父级关联关系...希望你看完学院君的这一系列教程可以了解并完全掌握 Eloquent 模型的定义和使用,有什么问题,欢迎随时与我交流。

19.4K30

Laravel 5.0 之 Eloquent 属性转换

官方文档的 Eloquent 相关部分在这里。 什么是属性转换 转换一个属性值的意思是把它转换成某个特定的数据类型(或者是为了确保它是某个特定的数据类型)。...属性转换是 Eloquent 模型的一个功能特性,这个特性让我们可以赋予 Eloquent 模型中的某个属性转换为一个特定的数据类型。...这意味着假如你的数据是以特定的格式存储在数据库中,而你在使用时需要的是另外一种格式,现在你可以配置 Eloquent 模型自动完成两种格式之间的转换工作。 为什么要这样做?...这个数组变量 $casts 的作用就是告诉 Eloquent:“每次当我访问这个模型中的 is_admin 属性的时候,返回一个类型为 boolean 的值给我”。...写在最后 如你所见, Eloquent 属性转换功能把我们从大量不必要的重复逻辑中解放出来,并且默默地让我们更容易在数据库中存储 JSON 数据。真是好东西!

2.1K80

orm 系列 之 Eloquent演化历程1

Eloquent Eloquent是laravel中的orm,采取的是active record的设计模式,里面的对象不仅包括领域逻辑,还包括了数据库操作,但是大家平时使用的时候可能没有探究eloquent...是怎么设计的,active record这种模式的优缺点等问题,下面我会带领大家从头开始看看Eloquent是如何设计并实现的。...本文是orm系列的第二篇,也是Eloquent演化的第一篇,Eloquent系列会尝试着讲清楚Eloquent是如何一步一步演化到目前功能强大的版本的,但是毕竟个人能力有限,不可能分析的非常完善,总会有不懂的地方...到这,我们就分析完了eloquent在f6e2170版本上具有的功能了,到目前为止,eloquent的类图如下: 总结 目前,我们分析到的版本是f6e2170,已经具备了一个orm该需要的功能了,Connection...Eloquent/Builder,同时我们也定义了对象的3种关系,1-1,1-N,N-N,下一阶段,Eloquent将会实现migrations or database modification logic

1K30

orm 系列 之 Eloquent演化历程2

本文是orm系列的第三篇,也是Eloquent演化的第二篇,Eloquent系列会尝试着讲清楚Eloquent是如何一步一步演化到目前功能强大的版本的,但是毕竟个人能力有限,不可能分析的非常完善,总会有不懂的地方...以上就是v4.0.0之前的Eloquent的大致功能,目前orm功能已经完善了,数据库迁移功能,Active Record模式的实现,下一步Eloquent的方向是什么呢?...Manager,记得网上搜索过关键字Using Eloquent outside Laravel,我们可以看到一篇Vivek Kumar Bansal写的文章,文章从2方面介绍了怎么使用Eloquent...接着我们看第二个Making a Model,使用上非常简单: //User Model use Illuminate\Database\Eloquent\Model as Eloquent class...总结 从v4.0.0开始,基本Eloquent就已经固定了,到目前最新master分支上,目录结构也没有什么变化了,因此下一篇开始,我们会在最新版的基础上,分析下Eloquent的一些具体的实现,尽情期待

2.4K30

Laravel Eloquent 模型关联关系详解(上)

到目前为止,我们介绍的所有 Eloquent 模型操作都是针对单表的,接下来我们将花三篇左右的篇幅来给大家介绍如何在 Eloquent 模型类中建立模型之间的各种关联关系,以及如何实现关联查询和更新。...底层约定 需要指出的是,在关联关系的建立过程中,Eloquent 也遵循了「约定大于配置」的原则。...遵循这种默认的约定,可以帮我们少写很多代码,减少很多额外的配置,所以如果不是迫不得已(比如从其他系统迁移过来),建议你在使用 Eloquent 的话,尽量遵循这些默认约定。...可以,Eloquent 为我们提供了 with 方法,我们将需要查询的关联关系动态属性(关联方法名)传入该方法,并将其链接到 Eloquent 模型原有的查询中,就可以一次完成关联查询,加上模型自身查询...Eloquent 底层约定 可以看到我们在定义多对多关联的时候,也没有指定通过哪些字段进行关联,这同样是遵循 Eloquent 底层默认约定的功劳,belongsToMany 方法签名如下: public

9.7K40

需要掌握的 Laravel Eloquent 搜索技术

本文同步至个人博客 需要掌握的 Laravel Eloquent 搜索技术 ,转载请注明出处。 当我们的应用程序访问较少时(例如在项目初期阶段),直接进行项目编码就可以解决大多数问题。...大多数情况下使用 Eloquent 的查询功能就可以完成基本的搜索处理。 预热 搜索功能是应用的重要组成模块。优秀的设计,可以帮助我们的用户简单快速的检索想要的信息。...本文将带领大家学习 MySQL 和 Eloquent 在搜索模块中设计的相关技术。 基本的 Eloquent Where 查询 作为首个要讲解的搜索功能,我们先不涉及新知识点。...['title' => 'foo'], ['published' => true], ])->get(); 如果需要实现类似 ||(或查询) 查询,则可以使用 Eloquent...Eloquent 提供了比 where 语句更加灵活的模糊查询功能。通过在 where 方法中使用通配符,可以实现模糊查询功能。让我们看看 % 通配符: <?

3.5K10

需要掌握的 Laravel Eloquent 搜索技术

大多数情况下使用 Eloquent 的查询功能就可以完成基本的搜索处理。 预热 搜索功能是应用的重要组成模块。优秀的设计,可以帮助我们的用户简单快速的检索想要的信息。...本文将带领大家学习 MySQL 和 Eloquent 在搜索模块中设计的相关技术。 基本的 Eloquent Where 查询 作为首个要讲解的搜索功能,我们先不涉及新知识点。...['title' => 'foo'], ['published' => true], ])->get(); 如果需要实现类似 ||(或查询) 查询,则可以使用 Eloquent...Eloquent 提供了比 where 语句更加灵活的模糊查询功能。通过在 where 方法中使用通配符,可以实现模糊查询功能。让我们看看 % 通配符: <?...原文: https://pineco.de/basic-eloquent-search-techniques/

4.2K20
领券