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之第一天
Oct 09 PHP
php MessagePack介绍
Oct 06 PHP
php foreach循环中使用引用的问题
Nov 06 PHP
Drupal7中常用的数据库操作实例
Mar 02 PHP
php字符串的替换,分割和连接方法
May 23 PHP
php进行ip地址掩码运算处理的方法
Jul 11 PHP
PHP支付系统设计与典型案例分享
Aug 02 PHP
浅谈PHP中关于foreach使用引用变量的坑
Nov 14 PHP
详解php几行代码实现CSV格式文件输出
Jul 01 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 PHP
PHP实现负载均衡session共享redis缓存操作示例
Aug 22 PHP
PHP implode()函数用法讲解
Mar 08 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
十大感人催泪爱情动漫 第一名至今不忍在看第二遍
2020/03/04 日漫
使用PHP获取汉字的拼音(全部与首字母)
2013/06/27 PHP
js解析与序列化json数据(二)序列化探讨
2013/02/01 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
javascript制作2048游戏
2015/03/30 Javascript
jquery带有索引按钮且自动轮播切换特效代码分享
2015/09/15 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
jquery轮播的实现方式 附完整实例
2016/07/28 Javascript
javascript表达式和运算符详解
2017/02/07 Javascript
微信小程序 动态绑定事件并实现事件修改样式
2017/04/13 Javascript
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
C#实现将一个字符转换为整数
2017/12/12 Javascript
switchery按钮的使用方法
2017/12/18 Javascript
vue项目中使用fetch的实现方法
2019/04/25 Javascript
python实现simhash算法实例
2014/04/25 Python
Python入门篇之函数
2014/10/20 Python
python概率计算器实例分析
2015/03/25 Python
利用django如何解析用户上传的excel文件
2017/07/24 Python
Python下简易的单例模式详解
2019/04/08 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
python 实现图片批量压缩的示例
2020/12/18 Python
乐天旅游香港网站:日本饭店预订
2017/11/29 全球购物
Wedgwood英国官方网站:英式精致骨瓷餐具、礼品与生活精品,源于1759年
2019/09/02 全球购物
iHerb俄罗斯:维生素、补品和天然产品
2020/07/09 全球购物
Chinti & Parker官网:奢华羊绒女装和创新针织设计
2021/01/01 全球购物
What is the purpose of Void class? Void类的作用是什么?
2016/10/31 面试题
技能竞赛活动方案
2014/02/21 职场文书
销售经理岗位职责
2014/03/16 职场文书
大学生简历求职信
2014/06/24 职场文书
小学家长学校培训材料
2014/08/24 职场文书
2014年学生资助工作总结
2014/12/18 职场文书
大学生支教感言
2015/08/01 职场文书
公司员工宿舍管理制度
2015/08/03 职场文书
勤俭节约主题班会
2015/08/13 职场文书
使用refresh_token实现无感刷新页面
2022/04/26 Javascript