我有以下表格布局:
functions:
- id
- name
- category_id
categories:
- id
- name
versions:
- id
- name
function_version
- function_id
- version_id
我想呼叫以下關系
從版本模型 $version->categories
從類別模型 $category->versions
謝謝你的幫助!
uj5u.com熱心網友回復:
看到這個庫: https ://github.com/staudenmeir/eloquent-has-many-deep
README.md 中的示例。
uj5u.com熱心網友回復:
正如 laravel 在他們的檔案中解釋Laravel 關系一樣,對于很多人來說,您可以使用此代碼
public function 'function name'()
{
return $this->belongsToMany(App Model Name::class);
}
uj5u.com熱心網友回復:
試試下面的代碼:
從版本模型:
$version = Version::with('functions' => function($query) { $query->withCount('category'); })->firstOrFail(); return $version->functions->category_count;從類別模型:
$category = Category::with('functions' => functions($query) { $query->withCount('versions'); })->firstOrFail(); return $category->functions->versions_count;
對于上述代碼,您在特定模型中具有以下關系:
class Category extends Model
{
public function functions()
{
return $this->hasMany(Function::class);
}
}
class Function extends Model
{
public function Category()
{
return $this->belongsTo(Category::class);
}
public function versions()
{
return $this->belongsToMany(Version::class);
}
}
class Version extends Model
{
public function functions()
{
return $this->belongsToMany(Function::class);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/437551.html
