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 相关文章推荐
提问的智慧(2)
Oct 09 PHP
深入了解php4(1)--回到未来
Oct 09 PHP
Mysql的GROUP_CONCAT()函数使用方法
Mar 28 PHP
php递归列出所有文件和目录的代码
Sep 10 PHP
php 接口类与抽象类的实际作用
Nov 26 PHP
深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念
Jun 06 PHP
php二维数组转成字符串示例
Feb 17 PHP
php实例分享之mysql数据备份
May 19 PHP
PHP判断文章里是否有图片的简单方法
Jul 26 PHP
PHP函数实现从一个文本字符串中提取关键字的方法
Jul 01 PHP
关于PHP定时发送服务的解决办法
Apr 23 PHP
PHP实现动态创建XML文档的方法
Mar 30 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 和 MySQL 基础教程(四)
2006/10/09 PHP
javascript some()函数用法详解
2014/11/13 PHP
php 利用socket发送HTTP请求(GET,POST)
2015/08/24 PHP
Yii2中多表关联查询hasOne hasMany的方法
2017/02/15 PHP
PHP日期和时间函数的使用示例详解
2020/08/06 PHP
jQuery autocomplete插件修改
2009/04/17 Javascript
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
AngularJS语法详解(续)
2015/01/23 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
浅析jQuery操作select控件的取值和设值
2016/12/07 Javascript
Bootstrap CSS组件之按钮组(btn-group)
2016/12/17 Javascript
解决AjaxFileupload 上传时会出现连接重置的问题
2017/07/07 Javascript
如何开发出更好的JavaScript模块
2017/12/22 Javascript
基于vue cli重构多页面脚手架过程详解
2018/01/23 Javascript
详解ES7 Decorator 入门解析
2019/02/18 Javascript
Vue配置marked链接添加target="_blank"的方法
2019/07/19 Javascript
js在HTML的三种引用方式详解
2020/08/29 Javascript
vue单元格多列合并的实现
2020/11/26 Vue.js
[05:05]给小松五分钟系列 第二期介绍为什么打DOTA2
2014/07/02 DOTA
[03:41]DOTA2上海特锦赛小组赛第三日recap精彩回顾
2016/02/28 DOTA
[40:53]完美世界DOTA2联赛PWL S3 Magma vs DLG 第二场 12.18
2020/12/20 DOTA
Python 模板引擎的注入问题分析
2017/01/01 Python
Python使用SQLite和Excel操作进行数据分析
2018/01/20 Python
深入浅析python with语句简介
2018/04/11 Python
Python如何实现小程序 无限求和平均
2020/02/18 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
通过CSS3的object-fit来调整图片适配尺寸的技巧简介
2016/02/27 HTML / CSS
我的中国梦口号
2014/06/16 职场文书
学党史心得体会
2014/09/05 职场文书
跟班学习心得体会(共6篇)
2016/01/23 职场文书
基于python实现银行管理系统
2021/04/20 Python
python用tkinter开发的扫雷游戏
2021/06/01 Python
MySQL之select、distinct、limit的使用
2021/11/11 MySQL
在Python 中将类对象序列化为JSON
2022/04/06 Python