chxj1992/eloquent-relation-plugin
Composer 安装命令:
composer require chxj1992/eloquent-relation-plugin
包简介
README 文档
README
这是什么?
一般ORM将数据关系分为四类:
- hasOne
- belongsTo
- hasMany
- belongsToMany
ORM为了能方便的抽象出这四种关系,会对数据表的设计有一定的要求. 如: 实现"一对多"关系, 要求采用在子表的各行数据中保存主表ID的设计方式来描述主表包含了多条子表数据
主表:
| id | name |
|---|---|
| 1 | Tom |
| 2 | Sandy |
子表:
| user_id | card_num |
|---|---|
| 1 | 123214 |
| 1 | 123235 |
| 2 | 845623 |
但因为当前数据库(med)中一些表用于表示"一对多"关系的数据表设计并不符合这样的设计规范 (当前Med库中多是通过在主表中用一个集合保存子表的关联ID来描述这种关系的).
所以,本插件实现了一个新关系接口'containsMany', 它的作用是当 当前数据表采用了在主表中用集合保存子表ID的方式来表述"一对多"关系时,仍能让开发者以Eloquent式的调用来优雅的处理多个模型之间的关系.
使用
// 数据模型类
class SomeModel extends Model {
use ExtraRelations;
// relationship model
public function xxxs() {
$this->containsMany('...Model', foreign_key, local_key);
}
}
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-09-27