Laravel:如何在视图中显示一对多

没有人

请帮忙。

新手在这里。我需要显示赞助人和商品的名称,而不是显示其ID。我有3张桌子:

顾客(id,名称),物品(id,名称),交易(patron_id,item_id,借出,到期,退回)

赞助人模型

    public function transaction ()
    {
        return $this->hasMany(Transaction::class);
    }

物品模型

    public function transaction ()
    {
        return $this->hasMany(Transaction::class);
    }

交易模型

    public function item()
    {
        return $this->belongsTo(Item::class);
    }

    public function patrons()
    {
        return $this->belongsTo(Patron::class);
    }

这是我真正困惑的部分。我不知道如何编码TransactionController和视图。

事务控制器:(这还对吗?)

        $transactions = Transaction::paginate(10);
        return view('transactions.index')->with(compact('transactions'))->with('patrons', Patron::all())->with('items', Item::all());

index.blade.php(我不知道该如何编码)

@foreach($transactions as $transaction)
  <tr role="row" class="odd">
    <td class="sorting_1 dtr-control">{{ $transaction->patron_id }}</td>
    <td>{{ $transaction->item_id }}</td>
    <td>{{ $transaction->Loaned }}</td>
    <td>{{ $transaction->Due }}</td>
  </tr>
@endforeach

视图显示如下:

1     1     2020-09-21
2     5     2020-09-21

但是我需要它显示如下:

John Doe      Harry Potter        2020-09-21
Mary Jane     Game of Thrones     2020-09-21
水手

问题来自您如何从数据库中提取数据以及如何将其推送到视图。

为了检索数据,您可以急于一次加载transactions所有模型的关系并同时分页

$transactions = Transaction::with('patron', 'item')->paginate(15);

看一下有关视图文档,有多种传输数据的方法。Compact的效果很好,并且易于理解,并且有多个收益,因此我在这里举一个例子:

return view('transactions.index', compact('transactions'));

就是这样-只需记住transactions在引号中键入变量,而不要将实际变量放入compact方法中即可。

然后,由于您渴望加载关系,因此在视图中,您现在可以调用关系名称,而不仅仅是ID号。例如:

<td>{{ $transaction->item->name }}</td>

建议您将关系从顾客重新命名为顾客,因为它是一个belongsTo。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在 Laravel 视图中显示 DBMS 名称和版本?

来自分类Dev

android如何在多列列表视图中显示25行,当单击下一步按钮时显示下25行

来自分类Dev

如何在列表视图中显示位图?

来自分类Dev

如何在视图中显示上传的照片

来自分类Dev

如何在视图中显示最新内容

来自分类Dev

如何在Django视图中显示pygooglechart?

来自分类Dev

如何在视图中显示参考模型?

来自分类Dev

如何在列表视图中显示位图?

来自分类Dev

如何在水平滚动视图中显示

来自分类Dev

如何在列表视图中显示整数?

来自分类Dev

如何在视图中显示用户角色?

来自分类Dev

Laravel:如何在数据透视表的显示视图中显示CategoryTitle

来自分类Dev

如何在一个视图中显示两个视图控制器?

来自分类Dev

如何在laravel视图中添加图像?

来自分类Dev

Laravel,如何在视图中过滤日期?

来自分类Dev

一对多:使用 Laravel 在每个类别中显示条件

来自分类Dev

如何在Laravel中从多对多关系的一对多关系中获取项目?

来自分类Dev

如何在多列列表视图中检索第一个值

来自分类Dev

显示一对多阵列

来自分类Dev

显示一对多阵列

来自分类Dev

在laravel中如何在单个视图中显示来自两个不同模型的值

来自分类Dev

Laravel | 如何在类别视图中显示分配给产品的属性

来自分类Dev

如何在Laravel的模态视图中显示cmd线输出数据

来自分类Dev

如何在视图中显示特定的 Laravel 验证错误,而不是全部

来自分类Dev

如何在列表视图中显示列表视图

来自分类Dev

如何在父视图中显示视图的结果?

来自分类常见问题

如何在链接图中显示带有两个不同谓词的主题,它们指向同一对象?

来自分类Dev

如何在链接图中显示带有两个不同谓词的主题,它们指向同一对象?

来自分类Dev

如何在laravel中按层次结构顺序显示此一对多关系数据?

Related 相关文章

  1. 1

    如何在 Laravel 视图中显示 DBMS 名称和版本?

  2. 2

    android如何在多列列表视图中显示25行,当单击下一步按钮时显示下25行

  3. 3

    如何在列表视图中显示位图?

  4. 4

    如何在视图中显示上传的照片

  5. 5

    如何在视图中显示最新内容

  6. 6

    如何在Django视图中显示pygooglechart?

  7. 7

    如何在视图中显示参考模型?

  8. 8

    如何在列表视图中显示位图?

  9. 9

    如何在水平滚动视图中显示

  10. 10

    如何在列表视图中显示整数?

  11. 11

    如何在视图中显示用户角色?

  12. 12

    Laravel:如何在数据透视表的显示视图中显示CategoryTitle

  13. 13

    如何在一个视图中显示两个视图控制器?

  14. 14

    如何在laravel视图中添加图像?

  15. 15

    Laravel,如何在视图中过滤日期?

  16. 16

    一对多:使用 Laravel 在每个类别中显示条件

  17. 17

    如何在Laravel中从多对多关系的一对多关系中获取项目?

  18. 18

    如何在多列列表视图中检索第一个值

  19. 19

    显示一对多阵列

  20. 20

    显示一对多阵列

  21. 21

    在laravel中如何在单个视图中显示来自两个不同模型的值

  22. 22

    Laravel | 如何在类别视图中显示分配给产品的属性

  23. 23

    如何在Laravel的模态视图中显示cmd线输出数据

  24. 24

    如何在视图中显示特定的 Laravel 验证错误,而不是全部

  25. 25

    如何在列表视图中显示列表视图

  26. 26

    如何在父视图中显示视图的结果?

  27. 27

    如何在链接图中显示带有两个不同谓词的主题,它们指向同一对象?

  28. 28

    如何在链接图中显示带有两个不同谓词的主题,它们指向同一对象?

  29. 29

    如何在laravel中按层次结构顺序显示此一对多关系数据?

热门标签

归档