# ThinkPhP5 视频教程(十九讲):关联-一(一对多)
![](https://box.kancloud.cn/716b48b471d20c634af52f3915ec0efa_953x662.png)
![](https://box.kancloud.cn/0055e879ff99de3fe50f9f42ea207d24_1205x737.png)
* 一对多关联
每个用户有多个评论就是一个典型的一对多关联
* 关联定义
在User模型类添加Comment关联如下:
~~~
<?php
namespace app\index\model;
use think\Model;
class Users extends Model
{
// 定义关联方法
public function comm()
{
return $this->hasMany('Comment','uid','user_id');
}
}
~~~
hasMany的参数如下:
> hasMany('关联模型名','关联外键','关联模型主键','别名定义')
如果需要定义对应的关联,则可以使用belongsTo方法:
~~~
<?php
namespace app\index\model;
use think\Model;
class Comment extends Model
{
// 定义关联方法
public function user()
{
return $this->belongsTo('Users','user_id','uid');
}
}
~~~
* 关联新增
~~~
public function test19()
{
// 一对多批量新增
$user = Users::get(1);
$comment = [
['content' => 'ThinkPHP5视频教程', 'add_time' =>time()],
['content' => 'TP5视频教程', 'add_time' => time()],
];
$user->comm()->saveAll($comment);
return '添加comm成功';
}
~~~
如果需要数据表的, 请前往TPshop官网下载.
~~~[youku]
XMjc0MDY3MjE1Mg =856x523
~~~
**TP5粉丝群: 543608226**
视频播放密码: tp009
Demo下载地址: https://pan.baidu.com/s/1pLTMYRT
[需要TPshop商城源码的可前往TPshop官网免费下载安装](http://www.tp-shop.cn)
- 第一讲、课程大纲
- 第二讲、入门与安装-上
- 第二讲、入门与安装-下
- 第三讲、URL和路由-路由
- 第四讲、URL和路由-URL
- 第五讲、请求和响应-请求
- 第六讲、请求和响应-响应
- 第七讲、SQL追踪器
- 第八讲、数据库-基本操作
- 第九讲、数据库操作-事务
- 第十讲、查询语言-上
- 第十一讲、查询语言-下
- 第十二讲、模型和关联-上
- 第十三讲、模型和关联-下
- 第十四讲、读取器与修改器
- 第十五讲、转换与自动完成
- 第十六讲、查询范围
- 第十七讲、输入和验证-上
- 第十八讲、输入和验证-下
- 第十九讲、关联-一
- 第二十讲、关联-二
- 第二十一讲、关联-三
- 第二十二讲、关联-四
- 第二十三讲、关联-五
- 第二十四讲、模型输出
- 第二十五讲、视图和模板-一
- 第二十六讲、视图和模板-二
- 第二十七讲、调试和日志
- 第二十八讲、API开发
- 第二十九讲、扩展
- 第三十讲、浅析session,cookie机制
- 第三十一讲、session的使用
- 第三十二讲、cookie的使用
- 第三十三讲、验证码
- 第三十四讲、文件上传
- 第三十五讲、图像处理
- 第三十六讲、版本3.2和5的差别
- 第三十七讲、未来与总结
- 第二套、TPshop大型项目实战
- TPshop项目实战
- 第一讲、内容介绍
- 第二讲、TPshop window安装
- 第三讲、TPshop linux安装
- 第四讲、TPshop目录结构
- 第五讲、单点登录
- 第六讲、支付插件原理
- 第七讲、支付宝支付集成
- 第八讲、微信支付
- 第九讲、银联支付
- 第十讲、TPshop QQ快捷登录
- 第十一讲、支付宝登录
- 第十二讲,微信扫码登录
- 第十三讲,新手入门微信开发
- 第十四讲,10分钟将TPshop部署服务器上线
- 第十五讲,网站真实高并发架设
- 第十六讲,网站真实高并发架设