我的用户数据库中有四列和一个配置变量。在我看来,我需要显示这些列的总和除以变量 - 计算起来很简单,但理想情况下我希望将其结果存储为模型上的属性。
基本上避免这样做:
$user = Auth::user();
$user->setPercent();
dd($user->percent);
我想做的是自动设置百分比属性,但我不知道在哪里做。我尝试过覆盖模型构造函数,但此时尚未检索到用户的数据。
谢谢
要创建,您只需将这样的方法添加到您的用户模型中:
class User extends BaseModel implements UserInterface, RemindableInterface {
public function getPercentAttribute($value)
{
/// do your magic
return $yourMagicValue
}
}
要按照您所说的方式使用它,您需要:
$user->percent
如果您想在创建对象时拥有此属性,请执行以下操作:
public function __construct($attributes = array())
{
if (!isset($this->percent))
$this->percent = $this->setPercent();
parent::__construct($attributes);
}
这对我有用