在Laravel模型中重用关系

时间:2013-07-02 19:26:31

标签: php laravel laravel-4 eloquent

我遇到的问题是laravel 4没有发生在3.

在Permissions_Role模型中,我建立了这种关系。

/**
 * User Relationship
 *
 * @return User
 */
 public function user()
 {
     return $this->belongsTo('User', 'user_id');
 }

现在,我想在模型中稍后使用它来获取该用户的用户名。在laravel 3中,可以通过以下方式完成。

return ucword($this->user()->first()->username);

然而,在四,它似乎没有以相同的方式返回一个对象,我似乎无法弄清楚它的新语法。以下是我目前正在尝试的内容。

/**
 * Get username
 *
 * @return string
 */
 public function getUsernameAttribute()
 {
     return ucwords($this->user()->first()->username);
 }

对此的任何帮助将不胜感激。谢谢:))

1 个答案:

答案 0 :(得分:1)

您不必再写(),它会自动转换为属性

新:$this->user->username而不是$this->user()->username