Php Laravel-从模型中操作数据

Php Laravel-从模型中操作数据,php,laravel,eloquent,Php,Laravel,Eloquent,我可能把这件事复杂化了,或者遗漏了一些非常简单的事情,所以请原谅我 我正在尝试操作/映射模型中的一些数据 我正在尝试做的一个非常简单的例子: 我有$model->attr,这将返回数据库中该列的任何内容 我知道返回值将是1、2或3 当在视图上显示时,我希望此值显示不同的内容,为了这个示例,让我们假设1=>'red',2=>'blue',3=>'green' 我将如何在模型中执行此操作?我看过访问器和变异器,但不确定它们是否正确使用 提前感谢。我认为您正在尝试根据条件输出文本。如果是,你可以试试

我可能把这件事复杂化了,或者遗漏了一些非常简单的事情,所以请原谅我

我正在尝试操作/映射模型中的一些数据

我正在尝试做的一个非常简单的例子:

我有
$model->attr
,这将返回数据库中该列的任何内容

我知道返回值将是
1
2
3

当在视图上显示时,我希望此值显示不同的内容,为了这个示例,让我们假设
1=>'red'
2=>'blue'
3=>'green'

我将如何在模型中执行此操作?我看过访问器和变异器,但不确定它们是否正确使用


提前感谢。

我认为您正在尝试根据条件输出文本。如果是,你可以试试

@if($model->attr==1)
  red
@elseif($model->attr==2)
  blue
@else
  green
@endif
您确实需要一个:

把它放在你的模型里,它应该可以完美地工作


Laravel将属性转换为CamelCase,因此
$user->full\u name
具有访问器
getFullNameAttribute
$user->all\u your\u base\u是属于我们的
变成
getall your base是属于我们的属性

可能会有帮助。我认为变异子是正确的答案。你应该详细说明这个答案,并将其作为答案发布。我实际上认为这不是作者想要的。这要求您将3个子句放在您想要输出数据的任何地方@Frank Provost:是的,您是对的。@MuhammadRizwan您的建议对于一个案例来说都是可以接受的,但是接受的答案使其在我的整个应用程序中重复使用,谢谢您欢迎,请点击向上箭头至少给出一点,我认为这是一个很好的答案,但是你应该在返回后离开休息。啊,谢谢!休息是一种习惯。我将更新我的答案并删除它们!
public function getNewValueAttribute($value){
    switch($value) {
        case '1':
            return 'red';
        case '2':
            return 'blue';
        case '3':
            return 'green';
    }
}