laravel - Laravel 删除关系并以一种方式创建新关系?
问题描述
大家好,是否可以以一种方式执行以下代码?
$Project->deadline()->delete();
$Project->deadline()->create($deadline);
项目模型:
public function deadline()
{
return $this->hasOne('App\Models\UserProjectDeadline','projects_id','id');
}
解决方案
似乎没有在一行代码中删除和创建的方法,但 Laravel 提供updateOrCreate(array $attributes, array $values = [])
了可用于 hasOne 关系的函数。
$Project->deadline()->updateOrCreate($attributes, $deadline); // To update based on the attributes
或者,如果您想更改/更新没有任何指定属性的所有数据
$Project->deadline()->updateOrCreate([], $deadline); // To update all the data
推荐阅读
- docker - Assign docker container an external link through the API
- apache - 如何为 docker 官方 httpd 镜像启用 mod_rewrite 模块?
- input - 确定单个和同时按键事件的功能
- java - 爪哇。尝试仅计算正数的平均值,如果没有输入正数,也会显示一条消息
- java - 我试图在java中仅循环遍历数组的一部分以寻找匹配项
- variables - 查找数据集中存在的变量
- c# - 从数据库中检索一个值 - ADO.NET C#
- python - 我想将一个可被 2 整除的数字与列表中下一个可被 5 整除的数字交换
- client-server - 从客户端到服务器的同步调用和微服务之间的异步调用
- java - 使用哪一个?Swagger 1.5.x 还是 2.x?