【问题标题】:I want to fetch data of foreign key's table using laravel我想使用 laravel 获取外键表的数据
【发布时间】:2019-11-04 07:46:56
【问题描述】:

我有两个表“订单”和“用户”,其中用户表的 id 是“订单”表中的外键。我想使用“订单”表获取“用户”表的数据。

@foreach($orders as $ord)
                        <tr>
                            <td>{{$ord->id}}</td>
                            <td>{{$ord->productname}}</td>
                            <td>{{$ord->totalprice}}</td>
                            <td>{{$ord->quantity}}</td>
                            <td>{{$ord->users->name}}</td>
                          <tr>
 @endforeach

所以我想要使用 {{$ord-&gt;users-&gt;name}} 查询的用户名,但是 我有错误=

未定义属性:stdClass::$users

【问题讨论】:

  • 你在模型中定义了关系吗?
  • 未定义。但是定义后问题就解决了。谢谢

标签: laravel


【解决方案1】:

如果您说您的orders 表中有一个user_id。然后在您的 Order 模型中添加:

public function user()
{
    return $this->belongsTo(User::class);
}

在视图中你可以像这样使用它:

{{ $order->user->name }}

【讨论】:

    【解决方案2】:

    按顺序模型

    public function user()
    {
        return $this->belongsTo(User::class);
    }
    

    在你传递订单值的控制器中,

    $order=Order::with('user')->where(your_condition)->get();
    

    然后访问刀片中的值

    @foreach($orders as $ord)
                            <tr>
                                <td>{{$ord->id}}</td>
                                <td>{{$ord->productname}}</td>
                                <td>{{$ord->totalprice}}</td>
                                <td>{{$ord->quantity}}</td>
                                <td>{{$ord->user->name}}</td>
                              <tr>
     @endforeach
    

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 2019-03-30
      • 2015-11-09
      • 2018-12-08
      • 2021-05-09
      • 1970-01-01
      • 1970-01-01
      • 2016-10-07
      • 1970-01-01
      相关资源
      最近更新 更多