Laravel-无法为名为“ edge_50mm”的字段创建访问器

时间:2018-10-23 16:28:21

标签: php laravel eloquent accessor

我有一个Product模型,其字段为“ edge_50mm”。 问题是,当我为名为Accessor的字段创建getEdge50mmAttribute时,它不起作用。我认为是由于字段名称中的数字50。 我也尝试使用大写字母M,例如getEdge50MmAttribute,但没有成功。 名称中没有数字的其他字段的访问器起作用。

我将不胜感激。谢谢。

1 个答案:

答案 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"