我有一个Product
模型,其字段为“ edge_50mm
”。
问题是,当我为名为Accessor
的字段创建getEdge50mmAttribute
时,它不起作用。我认为是由于字段名称中的数字50。
我也尝试使用大写字母M,例如getEdge50MmAttribute
,但没有成功。
名称中没有数字的其他字段的访问器起作用。
我将不胜感激。谢谢。
答案 0 :(得分:2)
这是不可复制的。 Laravel使用他们精巧的大小写助手来转换属性的名称并检查变种器:
> Str::studly('edge_50mm');
"Edge50mm"
因此,edge_50mm和edge50mm的工作原理相同。
function getEdge50mmAttribute() {
return 'Hello World';
}
示例:
> $model->edge50mm
"Hello World"
> $model->edge_50mm
"Hello World"