Laravel 关联模型-关联新增和关联更新的方法


Posted in PHP onOctober 10, 2019

网上找了 Laravel 相关的关联新增和关联更新文档,写的都不是很满意。(基本都在抄文档)下面整理下自己代码中的关联操作方法

按照 Laravel 文档中的说明设置关联模型 参考地址

//病人模型
class Patient extends Model
{
  /**
   * 病人附表
   * @return \Illuminate\Database\Eloquent\Relations\HasOne
   */
  public function patientdata ()
  {
    return $this->hasOne(PatientData::class);
  }
  
 //病人附表模型
class PatientData extends Model
{
  public function patient()
  {
    return $this->belongsTo(Patient::class);
  }

关联更新代码

/**
 * 新增病人信息
 * @param array $data
 *
 * @return bool
 */
public function savePatient($data=[])
{
  DB::beginTransaction();
  if($patient = $this->create($data)){
    if ($res = $patient->patientdata()->create(["数据"])){
      DB::commit();
    } else{
      DB::rollBack();
    }
    return true;
  }
  return false;
}

关联更新代码

public function updatePatient($data=[])
{
  DB::beginTransaction();
  //先通过主键获得病人模型的实例
  $patient = $this->find($data['id']);
  if($patient->update($data)){
    if ($res = $patient->patientdata()->where('patient_id',$data['id'])->update(["数据"])){
      DB::commit();
    } else{
      DB::rollBack();
    }
    return true;
  }
  return false;
}

以上这篇Laravel 关联模型-关联新增和关联更新的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php之字符串变相相减的代码
Mar 19 PHP
php中对xml读取的相关函数的介绍一
Jun 05 PHP
php中通过curl smtp发送邮件
Jun 05 PHP
php从数据库查询结果生成树形列表的方法
Apr 17 PHP
33道php常见面试题及答案
Jul 06 PHP
PHP正则表达式之捕获组与非捕获组
Nov 06 PHP
PHP简单实现无限级分类的方法
May 13 PHP
php获取访问者浏览页面的浏览器类型
Jan 23 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
Feb 06 PHP
PHP PDOStatement::fetchAll讲解
Jan 31 PHP
phpstudy隐藏index.php的方法
Sep 21 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
Mar 09 PHP
Laravel 实现关系模型取出需要的字段
Oct 10 #PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
Oct 10 #PHP
laravel框架查询数据集转为数组的两种方法
Oct 10 #PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
Oct 10 #PHP
在laravel中使用with实现动态添加where条件
Oct 10 #PHP
Laravel关系模型指定条件查询方法
Oct 10 #PHP
laravel 输出最后执行sql 附:whereIn的使用方法
Oct 10 #PHP
You might like
如何使用PHP中的字符串函数
2006/11/24 PHP
Yii2.0高级框架数据库增删改查的一些操作
2015/11/16 PHP
PHP QRCODE生成彩色二维码的方法
2016/05/19 PHP
Laravel学习教程之从入口到输出过程详解
2017/08/27 PHP
基于Web标准的UI组件 — 树状菜单(2)
2006/09/18 Javascript
javascript学习笔记(九) js对象 设计模式
2012/06/19 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
JS实现div居中示例
2014/04/17 Javascript
js实现简单的左右两边固定广告效果实例
2015/04/10 Javascript
JS实现可直接显示网页代码运行效果的HTML代码预览功能实例
2015/08/06 Javascript
JavaScript基础知识及常用方法总结
2016/01/10 Javascript
easyui validatebox验证
2016/04/29 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
2016/08/11 Javascript
在js里怎么实现Xcode里的callFuncN方法(详解)
2016/11/05 Javascript
js实现仿购物车加减效果
2017/03/01 Javascript
bootstrap+jquery项目引入文件报错的解决方法
2018/01/22 jQuery
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
vue elementui form表单验证的实现
2018/11/11 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
JS实现打字游戏
2019/12/17 Javascript
原生JS实现留言板功能
2020/02/08 Javascript
js数组中去除重复值的几种方法
2020/08/03 Javascript
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
利用python解决mysql视图导入导出依赖的问题
2017/12/17 Python
django的聚合函数和aggregate、annotate方法使用详解
2019/07/23 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
HTML5不支持frameset的两种解决方法
2016/11/14 HTML / CSS
美国正宗设计师眼镜在线零售商:EYEZZ
2019/03/23 全球购物
JACK & JONES荷兰官网:男士服装和鞋子
2021/03/07 全球购物
自荐书封面下载
2013/11/29 职场文书
单位承诺书格式
2014/05/21 职场文书
国家助学金感谢信
2015/01/21 职场文书
2015年求职自荐信范文
2015/03/04 职场文书
如何将JavaScript将数组转为树形结构
2021/06/02 Javascript
Redis 限流器
2022/05/15 Redis