作为一个php程序员,thinkphp框架 详细解析belongto() 方法
时间: 2024-05-13 07:17:40 浏览: 165
belongTo() 方法是 ThinkPHP 框架的一种关联查询方法,用于建立当前模型与另一个模型之间的一对一关系。
该方法的语法格式如下:
```php
public function belongTo(string $model, string $foreignKey = '', string $localKey = '')
```
其中,`$model` 参数为关联模型的类名;`$foreignKey` 参数为关联模型中表示当前模型的外键名,默认值为当前模型的类名加上 `_id`,例如 `User` 模型的外键名默认为 `user_id`;`$localKey` 参数为当前模型中表示主键的属性名,默认值为 `id`。
使用示例:
假设我们有两个模型:`User` 模型和 `Profile` 模型。他们的关系是一个用户对应一个资料,也就是说 `User` 模型和 `Profile` 模型是一对一关系。
在 `User` 模型中定义 `Profile` 模型的关联:
```php
namespace app\index\model;
use think\Model;
class User extends Model
{
protected $pk = 'id';
// 定义与 Profile 模型的一对一关联
public function profile()
{
return $this->belongsTo(Profile::class);
}
}
```
在 `Profile` 模型中定义 `User` 模型的关联:
```php
namespace app\index\model;
use think\Model;
class Profile extends Model
{
protected $pk = 'id';
// 定义与 User 模型的一对一关联
public function user()
{
return $this->hasOne(User::class);
}
}
```
使用 `$user->profile` 即可获取该用户的资料信息。
阅读全文