laravel框架中hasOne和blongTo的用法详解
- 在某一个model class里面,class_name所对应的表为主表(父),
关系函数方法里面的第一个参数所对应的表为从属表(子),
即为与主表相关联的表。
$hasOne
1、外键保存在关联表中;
2、保存时自动更新关联表的记录;
3、删除主表记录时自动删除关联记录。
$belongsTo
1、外键放置在主表中;
2、保存时不会自动更新关联表的记录;
3、删除时也不会更新关联表的记录。
<?phpnamespace App\Model;
use Illuminate\Database\Eloquent\Model;class ProformaInvoice extends Model
{use InsertCreator,InsertUpdator, BasicPaginate,Sort, SoftDeletes, PermissionFilter;protected $table = 'proforma_invoice';//表中的这些字段是可以赋值的protected $fillable = ['code','sales_order_id','invoice_no','date','seller_id','buyer_id','port_id','updator_id','updated_at'''''''];const STATUS_SAVED = 1; //保存const STATUS_AUDITED = 2; //审核const STATUS_DISABLED = 3; //废弃static $field =['id', 'benebank', 'buyer_name', 'seller_company', 'sales_order_id'];protected $hidden = ['creator_id', 'deleted_at'];public function getId(){return $this->id;}public function seller(){return $this->belongsTo(CompanyAccount::class,'seller_id');//seller_id为在主表中(即ProformaInvoice)的外键}}
//同样的反写道理也是一样的
namespace App\Model;
use Illuminate\Database\Eloquent\Model;class CompanyAccount extends Model
{......public function Proforma(){return $this->hasOne(ProformaInvoice::class,'Proforma_id','id');//Proforma为在关联表表中(即ProformaInvoice)的外键,id为主表(CompanyAccount)的主键;综合起来的意思就是主表中的id与从表中的Proforma_id关联匹配获取从表ProformaInvoice表中的查询数据}
}
laravel框架中hasOne和blongTo的用法详解相关推荐
- python的raw_ input是什么意思-对python中raw_input()和input()的用法详解
最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...
- python中str和input_对python中raw_input()和input()的用法详解
最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下: 1.raw_input() raw_input([prompt]) -> ...
- js数组中foEach和map的用法详解 jq中的$.each和$.map
数组中foEach和map的用法详解 相同点: 1.都是循环遍历数组(仅仅是数组)中的每一项. 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项value, ...
- 教程-Delphi中Spcomm使用属性及用法详解
Delphi中Spcomm使用属性及用法详解 Delphi是一种具有 功能强大.简便易用和代码执行速度快等优点的可视化快速应用开发工具,它在构架企业信息系统方面发挥着越来越重要的作用,许多程序员愿意选 ...
- python3 isinstance用法_对python中assert、isinstance的用法详解
1. assert 函数说明: Assert statements are a convenient way to insert debugging assertions into a program ...
- python中tile的用法_python3中numpy函数tile的用法详解
tile函数位于python模块 numpy.lib.shape_base中,他的功能是重复某个数组.比如tile(A,n),功能是将数组A重复n次,构成一个新的数组,我们还是使用具体的例子来说明问题 ...
- python中mat函数_Python中flatten( )函数及函数用法详解
flatten()函数用法 flatten是numpy.ndarray.flatten的一个函数,即返回一个一维数组. flatten只能适用于numpy对象,即array或者mat,普通的list列 ...
- python中seek(10、1)_Python中index()和seek()的用法(详解)
1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...
- python中index什么意思_Python中index()和seek()的用法(详解)
1.index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如: >>> t=tuple('Allen') >>> t ('A', 'l ...
- python scatter参数详解_Python中scatter函数参数及用法详解
最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1.scatter函数原型 2.其中散点的形状参数marker如下: 3.其中颜色参数c如 ...
最新文章
- 基础认证伪造工具phishery
- ElasticSearch(一)基础知识
- 7月5日服务器临时维护更新公告,7月7日临时维护公告
- 数据湖技术 Iceberg 的探索与实践
- ASP.NET Core 源码学习之 Options[4]:IOptionsMonitor
- 技术人员如何创业《一》- 产品及想法
- java使用POST发送soap报文请求webservice返回500错误解析
- 在linux系统下安装与配置SVN服务器
- Python Dict笔记
- JavaScript基础功能代码实现
- 右键添加cmd命令快捷键,右键cmd快捷键丢失
- HTML 语法练习---常见标签
- Mac电脑没声音音量图标变灰色如何修复?
- python用smtplib、emai模块群发邮件
- cpu虚拟化(cpu虚拟化开启有什么影响)
- 如何用html来编写ppt,impress.js——用HTML“写”幻灯片
- mybatis用注解实现 一对一,一对多,多对多哟
- macbook电脑如何通过ssh连接群晖nas?
- MySQL复制+高可用技术
- 迅雷怎样打开html文件类型,迅雷看看怎么打开网页链接?迅雷看看打开种子文件方法...