关系计数列 Laravel

column with relationship count Laravel

我想在我的 crud tables 中添加一列,其中将显示关系的计数(只是一个整数)。 我有一个 crud table 类别,我希望能够查看每个类别中有多少产品。 有什么办法可以做到还是我需要自己实现?

Eloquent ORM 提供了一种非常简单的方法来处理关系和数据库。

请参考documentation.

您必须创建一个数据透视表 table,您可以在其中引用每个产品并将其 link 指向每个类别。

所以,要回答你的问题,是的,有一种方法可以做到这一点,而不必处理 mySQL 语句,但你必须使用 Eloquent ORM 自己搜索和实现它.

假设您有一个类别模型、一个产品模型以及它们之间定义的适当关系,您应该能够:

public function getProductsCountAttribute($value) { return $this->products()->count(); }

  • 向使用上面定义的访问器的 CRUD 添加一个 text 列,就像它是数据库中的一个列一样:$this->crud->addColumn('products_count');

希望对您有所帮助。