Laravel框架源码分析之数据库操作Eloquent Model CRUD猫耳朵 软件开发行业 从业人员1 人赞同了该文章 在数据库启动与连接文章中讲到 Eloquent ORM 是建立在 DB 的查询构建器基础之上。Eloquent ORM 是一个对象关系映射器(ORM),对数据库进行了抽象的 ORM,功能十分丰富让我们可以避免写复杂的SQL语句,并用优雅...
url-string comments id-integer body-text commentable_id-integer commentable_type-string comments表中有两个需要注意的重要字段commentable_id和commentable_type。commentable_id用来保存文章或者视频的 ID 值,而commentable_type用来保存所属模型的类名。commentable_type是在...
Rinvex Categorizable is a polymorphic Laravel package, for category management. You can categorize any eloquent model with ease, and utilize the power of Nested Sets, and the awesomeness of Sluggable, and Translatable models out of the box. - rinvex/lara
模型关联优点:主体数据和关联数据之间的关系在代码上更加简单表现;不需要写复杂的join语句和子查询;模型关联预加载,通过分别查询主体和关联数据再将它们关联匹配一起;按照Laravel设定好模式的代码高效和优雅。 本文会详细说说关于模型关联的源码,以便更好的理解和使用关联模型。 在实际开发中经常用到模型关联,大致有三种:...
Laravel Model查询结果的3种存储格式内存占用对比 PHP Laravel框架支持Model查询数据后可以有多种方式返回数据,对新手会造成一些困扰,比如数组Model对象、集合、纯数组 今天从内存占用的角度对比一下3种数据返回方式 按数组Model对象返回数据 写法 TestModel::query()->where('field_name',$value)->limit(10)->get(...
string asDecimal(float $value, int $decimals) Return a decimal as string. from HasAttributes Carbon asDate(mixed $value) Return a timestamp as DateTime object with time set to 00:00:00. from HasAttributes Carbon asDateTime(mixed $value) Return a timestamp as DateTime object. from...
General error:3105The value specifiedforgenerated column'v_meeting_id'intable'items'is not allowed. 我检查 SQL 才发现$item->replicate()是直接对 Model 的$attributes字段复制,也就是不会经过$fillable字段过滤,导致最终生成的 insert 语句中存在虚拟字段赋值,导致了上面的报错。
关于Laravel ORM 对 Model::find 方法进行缓存 前段时间做项目时候,想要在不改变方法签名的情况下,给 Model::find 方法做个缓存。而且想要做到即插即用。 1.先看一下当我们调用 find 方法时,框架干了什么? 找到Illuminate\Database\Eloquent\Model 的代码,搜索 find,没有该方法。看来是走了 __callStatic 这个...
['date', 'datetime']); } // 字段的时间属性有两种设置方法,一种是设置 $dates 属性: protected $dates = ['date_attr']; // 还有一种方法是设置 cast 数组: protected $casts = ['date_attr' => 'date']; // 只要是时间属性的字段,无论是什么类型的值,laravel 都会自动将其转化为数据库的时间...
In last version of laravel im using two models: contact document, which belongsTo contact by contact_id field For order by relation field (for example last_name) im using (may be isnt correct , but not anything about it in documentation) ...