如何替换另一个字段的值?

时间:2017-05-05 08:16:32

标签: laravel laravel-5 eloquent laravel-5.4

我有一些表有两个相同的字段:

value, default_value

当值为空时,如何在value上替换default_value时返回结果?

我不使用迭代与结果集合。我试图做出普遍的解决方案。

我尝试使用本地范围,但似乎这是一个糟糕的决定。

1 个答案:

答案 0 :(得分:1)

如果您使用Eloquent,您可以创建如下的访问者:

public function getRealValueAttribute() 
{
   return $this->value ? $this->value : $this->default_value;
}

并假设你得到这样的结果:

$items = Model::all();

您可以为以下模型显示此字段:

foreach ($items as $item) {
   echo $item->real_value;
}