我对如何获取其他模型中使用的方法名称有疑问。
有一个模型列表,其中一些模型在与其他模型的关系上使用了不同的方法名称。
例如,我的型号名称为 Member Rate Detail ,其中它属于 Member Rate 模型。从会员费率详细信息到会员费率的方法是head()
。
这是head()方法的示例代码:
public function head()
{
return $this->belongsTo(MemberRate::class, 'member_rate_head_id')->withTrashed();
}
对于客户详细信息模型,它属于客户模型。并且使用的连接器方法名称为group()
这是group()的示例代码:
public function group()
{
return $this->belongsTo(Customer::class, 'head_id', 'id')->withTrashed();
}
所以问题是我不知道此模型是否使用head()或group()或其他方法名称。
是否有Laravel Relationship概念方法可以获取使用的外键方法的列表或数组类型?
希望获得方法名称,以便将其定向到其实例类。
例如:
$memberRateDetail->getForeignMethod()->created_by;
**OR**
$customerDetail->getForeignMethod()->created_by;
非常感谢您!
答案 0 :(得分:-1)
不,除非您自己声明它们,否则不会存在。
比方说,您在所有模型中都声明了一个方法,在此您为类的外部关系声明了方法。您也可以将其实现为接口。
如果您拥有良好的IDE,也可以只使用代码提示,将PHP文档中的关系声明为* @property Collection head
也可以提供帮助。