Laravel设置用户属性

时间:2017-04-27 09:19:29

标签: php mysql laravel laravel-5

我在谷歌搜索并在这里搜索,但为了我的生活,我无法解决我的错误。

我有一个微小的整数值' subscribed' laravel中用户表中的值。我在用户模型中为它​​制作了mutator和accessor:

public function getSubscribedAttribute($value){
    return $value;
}
public function setSubscribedAttribute($value){
    //dd gives 1 if true
    //dd($value);
    $this->attributes['subscribed'] = $value;
}

并且在订阅控制器中,在Stripe中订阅用户之后,我将其称为:

Auth::user()->subscribed = 1;

在我的迁移中

$table->tinyInteger('subscribed')->default(0); //0 = false, 1=true

很抱歉,如果这是一个愚蠢的帖子,我真的不确定我在这里不理解。

2 个答案:

答案 0 :(得分:2)

你可以做到这一点。

$user = Auth::user();
$user->subscribed = 1;
$user->save() //for change subscribed to 1
$user->subscribed //should return subscribed value from database. 

答案 1 :(得分:0)

如果要使用新的模型实例来更改属性,则需要使用save()方法;

如果你想使用setXXAttribute()方法,当你使用create(),insert(),update()方法时会调用它。我当然不确定! goog luck