laravel-relation-save

📦laravel hasOne hasMany belongsto...

github

​https://github.com/liaoshengping/laravel-relation-save​

Installing

$ composer require liaosp/laravel-relation-save -vvv

✈Usage

在模型中添加

use SaveRelation;

🔨如何使用

$model->save($data);

$model->saveRelation($data);

🌰 example

比如有主表shop 和 store_detail

定义HasOne 关系

public function store_detail() { 
return $this->hasOne(\App\Models\StoreDetail::class, 'store_id', 'id');
}

比如前端json 请求

{
"name":"liaosp的店铺",
"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());

适用 创建和更新 ,可参考源码,学习更多小技巧。

​laravel-relation-save​

✏Reference

​laravel-admin​

​​【源码分析】Laravel-admin 关联保存的原理​​

Other

​Laravel 验证中文扩展​

Contributing

You can contribute in one of three ways:

1. File bug reports using the ​​issue tracker​​​.
2. Answer questions or fix bugs on the ​​​issue tracker​​​.
3. Contribute new features or update the wiki.

The code contribution process is not very formal. You just need to make sure that you follow the PSR-0, PSR-1, and PSR-2 coding guidelines. Any new code contributions must be accompanied by unit tests where applicable.

License

MIT