liaosp / laravel-relation-save
laravel 关联保存 hasOne hasMany belongsto
v1.0.6
2022-07-03 05:25 UTC
README
📦laravel 关联保存 hasOne hasMany belongsto.
github
https://github.com/liaoshengping/laravel-relation-save
安装
$ composer require liaosp/laravel-relation-save -vvv
✈使用
在模型中添加
use SaveRelation;
🔨使用
$this->model->save($validate->getData());
$this->model->saveRelation($validate->getData());
🌰 示例
比如有主表shop 和 store_detail
定义HasOne 关系
public function store_detail()
{
return $this->hasOne(\App\Models\StoreDetail::class, 'store_id', 'id');
}
比如前端json 请求
{
"name": "老廖的店铺",
"store_detail": {
"address": "福建省厦门市思明区吕厝地铁口"
}
}
创建数据简化前 (大概是这种意思)
//一些店铺操作
$this->store->save();
$this->store_detail->store_id = $this->store->id;
$this->store_detail->address = $request->get('store_detail')['address'];
$this->store_detail->save();
我看了下Laravel-admin 的关联保存,对于快速开发的项目,觉得挺好的,值得学习。encore\laravel-admin\src\Form.php
只需如下可以保存关联关系的数据了
$this->model->save($request->all());
$this->model->saveRelation($request->all());
更新日志
2022年3月27日10:21:21 多对多无限级保存
适用 创建和更新 ,可参考源码,学习更多小技巧。
✏参考资料
其他
贡献
你可以通过以下三种方式之一进行贡献
代码贡献过程并不正式。你只需要确保遵循PSR-0、PSR-1和PSR-2编码指南。任何新的代码贡献都必须附有适用的单元测试。
许可证
MIT