实际上,我的问题很简单,但我找不到任何答案 .
我正在使用Laravel雄辩,我有3个表:
company_types
-id
-name
document_types
-id
-name
和一个名为的数据透视表:
company_type_document_type
-company_type_id
-document_type_id
-is_default
我已经从我的公司对象中获得了 company_type_id
,并且我试图像这样得到 document_type
的 name
:
controller...
$document_type = CompanyTypesDocumentTypes::where('company_type_id',$company->company_type_id)->with('document_type')->where('is_default',true)->first();
view...
{{ $document_type->name }}
我确定问题出在我的模型上,但问题是我真的不明白何时使用“hasMany”或“BelongsToMany”等...另外,我认为可能存在问题 . 数据透视表的名称导致下划线太多
谢谢您的帮助!
1 回答
因为它是多对多的,所以你应该使用wherePivot()方法 .
定义关系:
然后,您可以使用以下关系获取文档类型:
在视图中显示它们: