当前位置: 首页 > 知识库问答 >
问题:

Laravel口才关系获取记录直到第三级关系

邢承弼
2023-03-14

我有users表,它与vendordetails表有hasOne关系。

class User extends Authenticatable
{
    public function vendor_details() {
        return $this->hasOne('App\Vendordetail');
    }
}

vendordetails表包含country_id、state_id和city_id,与Country、State和City模型有归属关系。

vendorDetail.php模型为:-

class Vendordetail extends Model
{
    public $timestamps = false;

    public function this_country(){
        return $this->belongsTo('App\Country', 'country_id');
    }

    public function this_state(){
        return $this->belongsTo('App\Country', 'state_id');
    }

    public function this_city(){
        return $this->belongsTo('App\Country', 'city_id');
    }

}

如果我查询users表,如何获取国家、州和城市的记录。

$user = User::with('vendor_details')->first();

在这个查询中,它只找到vendordetails表的结果,我还想要country、state和City。

谢谢

共有1个答案

堵彬彬
2023-03-14

访问嵌套关系

$user=user::with(['vendor_details.this_state','vendor_details.this_country','vendor_details.this_city'])->first();

 类似资料:
  • 考虑到Laravel指南中的基本示例有许多通过关系,我试图直接查询雄辩的、帖子类型为100的国家(只是一个例子)。 type_id是我的特例... 因此,我在country模型中创建了一个关系,通过用户创建了与帖子的关系。我想要实现的结果是列出一个国家,以及每个国家内由该国用户创建的帖子。 我能够以其他方式复制我想要实现的结果,但是我想知道为什么下面雄辩的查询没有返回预期的结果: 查询的返回是几个

  • 我有一个帖子模型、一个用户模型和一个评论模型。 我的用户可以发布帖子,也可以评论帖子。 我想得到帖子的评论,但是,我的用户也可以阻止用户。 我的意思是,如果活动用户有一些其他被阻止的用户,并且如果post的评论有这些用户创建的评论,我必须排除他们。 问题来了。 我想使用帖子和评论的关系,因为这里的工作还没有完成。但是如果我在posts数组中使用foreach,那么继续使用foreach将非常奇怪;

  • 这是我能言善辩的关系- 当我访问完整对象时- 我得到对象 但当我试图从对象中访问单个属性时- 我有错误 正在尝试获取非对象的属性'Office_Name'

  • 我被困在这个看似简单的任务上。 我有一个用户,他有很多商店,有很多产品。。 我正在尝试为某个用户获取所有产品。 这是有效的,并返回商店与他们的产品 但是我只需要产品的集合。我尝试了以下方法,但它搞砸了查询 知道我做错了什么吗?非常感谢。

  • 我正在构建一个小应用程序,以便在Laravel7中试验多对多关系。此应用程序涉及项目和用户(多对多)。 经过身份验证的用户可以创建新项目。每个项目都有自己的页面。在项目页面上,将呈现一个列表,其中包含作为该项目成员的每个用户的名称,在每个名称旁边是一个按钮,该按钮将从该项目中删除特定用户/成员。 现在,我被困在“删除用户”功能上。我不明白如何获取列表中每个用户的id,并将其传递给将“分离”多对多关

  • 常用数据库类型: 关系型数据库(以 MySQL、Postgresql为代表) 文档数据库 (以 MongoDB 为代表) 在我们开发的 Web 应用程序或者,系统的应用程序里面存储的一些数据都是存在一定的关联关系的,比如说用户做出了一些操作,我们需要知道是谁发起了这些操作,所以在日志记录表里面会有一个操作发起人,也就是记录下当前用户的唯一 Id 值,这是为了让一切都有迹可循,当出现各种事故的时候,